Aggregation Partitioning

Partitioning enables your system to process data in parallel across multiple threads and can improve aggregation performance.

Important

SailPoint recommends to use aggregation without partitioning, if you want to enable PIM. This is because, aggregation with partitioning enabled, the connector has to fetch the PIM memberships by triggering individual APIs for each user, which takes time and may affect aggregation performance.

On the other hand, aggregation without partitioning, the connector fetches all the PIM memberships of the user using caching mechanism, making the process more efficient. So, whenever PIM is enabled, it is suggested to use full aggregation without partitioning.

  1. Select Enable Partitioning if you want to process data in parallel across multiple threads.

  2. In the Partitioning Scheme field, enter user filters to define your aggregation partitions. Enter a supported user filter and then press Enter. You can add multiple filters using this method. The filter you define in Partitioning Scheme should evenly distribute all users to be managed across partitions.

    This is a multi-valued attribute. The value consists of different search filters for the attributes that can be filtered (for example, accountEnabled, city, displayName, mail, usageLocation, etc.). The partitioning scheme is a list of user filters where each user filter represents one user partition, and the partitioning scheme defines the scope of accounts applied during account aggregation. For more information, refer to the Microsoft Documentation on using query parameters.

    The following are some example Partitioning Scheme entries based on how you want to configure the partitions:

    • The following examples show you configurations based off of alphabetical inputs: 

      • startswith(displayName, 'A')

      • startswith(displayName, 'B')

      • startswith(displayName, 'C')

      • startswith(givenName, 'Smith')

    • You can also define schemes using other attributes:

      • accountEnabled eq true

      • userPrincipalName eq 'Paul@contoso.onmicrosoft.com'

  3. Enter the Number of Partitioning Threads the connector should use to concurrently execute your defined partitions. By default, it is set to 2 partitioning threads. If the VA is configured for multiple CPU cores, you can configure a higher number of partition threads to increase the performance.

    Note
    The Number of Partitioning Threads should equal the number of CPU cores on VA*2.

  4. Select Save.

Note
Due to PowerShell limitations, partitioning aggregation does not aggregate Exchange Online attribute details and Shared Mailbox as an entitlement.