Collection group capacity limits - Amazon OpenSearch Service

Collection group capacity limits

Collection groups provide granular control over resource allocation through minimum and maximum OCU limits. These limits apply to all collections within the group and operate independently from account-level capacity settings.

By default, there is a service quota (limit) for the number of collections in a collection group, the number of indexes in a collection, and the number of OCUs in a collection group. For more information, see OpenSearch Serverless quotas.

Understanding collection group capacity limits

You can configure minimum and maximum OCU limits for both indexing and search operations at the collection group level. These limits control how OpenSearch Serverless scales resources for collections in the group:

  • Minimum OCU – The minimum number of OCUs that OpenSearch Serverless maintains for the collection group, ensuring consistent baseline performance.

    • If the workload requires fewer OCU's than the specified minimum value, OpenSearch Serverless would still maintain the specified minimum value of OCU's and billing would reflect the same.

    • If the workload requires higher number of OCU's than the specified minimum value, OpenSearch Serverless would maintain that level of OCU's that's required for the workload and the billing would reflect the higher OCU utilization.

  • Maximum OCU – The maximum number of OCUs that OpenSearch Serverless can scale up to for the collection group, helping you control costs.

Collection group capacity limits are decoupled from account-level limits. Account-level maximum OCU settings apply only to collections not associated with any collection group, while collection group maximum OCU settings apply to collections within that specific group.

Valid capacity limit values

When setting minimum and maximum OCU limits for a collection group, you can only use values from the following set: 1, 2, 4, 8, 16, and multiples of 16 (such as 32, 48, 64, 80, 96) up to a maximum of 1,696 OCUs.

Both minimum and maximum OCU limits are optional when you create a collection group. If you don't specify a maximum OCU limit, OpenSearch Serverless uses a default value of 96 OCUs.

The minimum OCU limit must be less than or equal to the maximum OCU limit.

Understanding the relationship between account-level and collection group OCU limits

When planning your OpenSearch Serverless capacity, it's important to understand how account-level OCU limits and collection group OCU limits interact. The sum of the maximum OCU settings across all collection groups plus the maximum OCU setting at the account level must be less than or equal to the service quota limit per account. For current limit values, see OpenSearch Serverless quotas.

Note

Account-level maximum OCU settings apply only to collections not associated with any collection group. Collections within collection groups are governed by their respective collection group limits, not the account-level limits.

This constraint applies to both indexing and search OCUs independently. For example, if you configure account-level settings and collection groups, you must ensure the total doesn't exceed the service quota limit for indexing OCUs and separately doesn't exceed the service quota limit for search OCUs. Additionally, you can create a maximum of 300 collection groups per account.

Example: Planning capacity with account-level and collection group limits

If you set the account-level maximum search OCU to 500 and the service quota limit is 1,700:

  • And create 2 collection groups, the sum of the maximum OCU for the 2 collection groups must be no more than 1,200 (1,700 - 500)

  • You could leave each collection group at the default maximum OCU of 96 (96 + 96 + 500 = 692), leaving headroom for future growth

  • Or you could increase each collection group's maximum to 600 (600 + 600 + 500 = 1,700), using the full capacity allowed by the service quota

This relationship is critical for capacity planning. Before creating new collection groups or increasing maximum OCU limits, verify that your total allocation doesn't exceed the service quota limit. If you reach this limit, you must either reduce the maximum OCU settings on existing collection groups or decrease your account-level maximum OCU settings to make room for new allocations.

Configuring capacity limits

You can set capacity limits when you create a collection group or update them later. To configure capacity limits using the AWS CLI, use the CreateCollectionGroup or UpdateCollectionGroup commands:

aws opensearchserverless create-collection-group \ --name my-collection-group \ --capacity-limits maxIndexingCapacityInOCU=32,maxSearchCapacityInOCU=32,minIndexingCapacityInOCU=4,minSearchCapacityInOCU=4

To update capacity limits for an existing collection group:

aws opensearchserverless update-collection-group \ --id abcdef123456 \ --capacity-limits maxIndexingCapacityInOCU=48,maxSearchCapacityInOCU=48,minIndexingCapacityInOCU=8,minSearchCapacityInOCU=8

Monitoring collection group capacity

OpenSearch Serverless emits the following Amazon CloudWatch Logs metrics at one-minute intervals to help you monitor OCU utilization and capacity limits at the collection group level:

  • IndexingOCU – The number of indexing OCUs currently in use by the collection group.

  • SearchOCU – The number of search OCUs currently in use by the collection group.

OpenSearch Serverless also emits OCU metrics at the account level for collections not associated with any collection group. You can aggregate these metrics in CloudWatch to visualize the sum of OCUs across all collection groups and account-level collections.

Configure alarms to notify you when your collection group approaches its capacity limits so you can adjust settings as needed. For more information about OpenSearch Serverless metrics, see Monitoring Amazon OpenSearch Serverless.

How capacity limits are enforced

OpenSearch Serverless enforces collection group capacity limits during scaling operations. When your collections need additional resources, OpenSearch Serverless scales up to the maximum OCU limit. When demand decreases, OpenSearch Serverless scales down but maintains at least the minimum OCU limit to ensure consistent performance.

Capacity limits are enforced only when the collection group contains at least one collection. Empty collection groups do not consume OCUs or enforce capacity limits.

If a scaling operation would exceed the maximum OCU limit or violate the minimum OCU requirement, OpenSearch Serverless rejects the operation to maintain compliance with your configured limits.