Defining a Unique ID

By default, the Unique ID Generator stage creates a sequential ID, with the first record having an ID of 0, the second record having an ID of 1, the third record having an ID of 2, and so on. If you want to change how the unique ID is generated, follow this procedure.

  1. In the Unique ID Generator stage, on the Rules tab, click Modify.
  2. Choose the method you want to use to generate the unique ID.
    Options Description
    Sequential Numeric tag starting at Assigns an incremental numeric value to each record starting with the number you specify. If you specify 0, the first record will have an ID of 0, the second record will have an ID of 1, and so on.
    Sequential Numeric tag starting at value in a database field Assigns an incremental numerical value to each record starting with the maximum number read from the database field. This number is then incremented by 1 and assigned to the first record. For example, if the number read from the database field is 30, the first record will have an ID of 31, the second record will have an ID of 32, and so on.
    Connection
    Select the database connection you want to use. Your choices vary depending on what connections are defined in the Connection Manager of Management Console. If you need to make a new database, or modify or delete an existing connection, click Manage.
    If you are adding or modifying a database connection, complete these fields:
    Connection name
    Enter a name for the connection. This can be anything you choose.
    Database driver
    Select the appropriate database type.
    Connection options
    Specify the host, port, instance, user name, and password to use to connect to the database.
    Table view
    Specifies the table or view in the database that you want to query.
    Database field
    Select a column from the list to generate a unique key.

    The supported datatypes for unique ID generation are:

    long
    A numeric data type that contains both negative and positive whole numbers between -263 (-9,223,372,036,854,775,808) and 263-1 (9,223,372,036,854,775,807).
    integer
    A numeric data type that contains both negative and positive whole numbers between -231 (-2,147,483,648) and 231-1 (2,147,483,647).
    bigdecimal
    A numeric data type that supports 38 decimal points of precision. Use this data type for data that will be used in mathematical calculations requiring a high degree of precision, especially those involving financial data. The bigdecimal data type supports more precise calculations than the double data type.
    double
    A numeric data type that contains both negative and positive double precision numbers between 2-1074 and (2-2-52)×21023. In E notation, the range of values is -1.79769313486232E+308 to 1.79769313486232E+308.
    float
    A numeric data type that contains both negative and positive single precision numbers between 2-149 and (2-223)×2127. In E notation, the range of values -3.402823E+38 to 3.402823E+38.
    Date/Time stamp Creates a unique key based on the date and time stamp instead of sequential numbering.
    UUID

    Creates a universally unique 32-digit identifier key for each record. The digits in the key are displayed in five groups separated by hyphens, in the form 8-4-4-4-12 for a total of 36 characters (32 alphanumeric characters and four hyphens). Example: 123e4567-e89b-12d3-a456-432255330000

    Off Select this option only if you want to generate a non-unique key using an algorithm.
  3. Click OK.