MongoDB Connector > Mappings and Mapping Tasks with MongoDB > Partitioning
  

Partitioning

When you read data from a MongoDB source, you can configure key range partitioning to optimize the mapping performance at run time.

Key range partitioning

You can configure key range partitioning when you use a mapping task to read data from MongoDB sources. With key range partitioning, the Secure Agent distributes rows of source data based on the fields that you define as partition keys. The Secure Agent compares the field value to the range values for each partition and sends rows to the appropriate partitions.
Use key range partitioning for columns that have an even distribution of data values. Otherwise, the partitions might have unequal size. For example, a column might have 10 rows between key values 1 and 1000 and the column might have 999 rows between key values 1001 and 2000. If the mapping includes multiple sources, use the same number of key ranges for each source.
When you define key range partitioning for a column, the Secure Agent reads the rows that are within the specified partition range. For example, if you configure two partitions for a column with the ranges as 10 through 20 and 30 through 40, the Secure Agent does not read the rows 20 through 30 because these rows are not within the specified partition range.
You can configure a partition key for fields of the following data types:

Configuring key range partitioning

Perform the following steps to configure key range partitioning for MongoDB sources:
    1. In the Source Properties, click the Partitions tab.
    2. Select the required partition key from the list.
    3. Click Add New Key Range to define the number of partitions and the key ranges based on which the Secure Agent must partition data.
    Use a blank value for the start range to indicate the minimum value. Use a blank value for the end range to indicate the maximum value.
    The following image displays the Partitions tab:
    The image shows the partitions and the corresponding key ranges.