aws-cdk-lib.aws_dynamodb.CfnGlobalTable.CapacityAutoScalingSettingsProperty

interface CapacityAutoScalingSettingsProperty

LanguageType name
.NETAmazon.CDK.AWS.DynamoDB.CfnGlobalTable.CapacityAutoScalingSettingsProperty
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awsdynamodb#CfnGlobalTable_CapacityAutoScalingSettingsProperty
Javasoftware.amazon.awscdk.services.dynamodb.CfnGlobalTable.CapacityAutoScalingSettingsProperty
Pythonaws_cdk.aws_dynamodb.CfnGlobalTable.CapacityAutoScalingSettingsProperty
TypeScript aws-cdk-lib » aws_dynamodb » CfnGlobalTable » CapacityAutoScalingSettingsProperty

Configures a scalable target and an autoscaling policy for a table or global secondary index's read or write capacity.

Example

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_dynamodb as dynamodb } from 'aws-cdk-lib';
const capacityAutoScalingSettingsProperty: dynamodb.CfnGlobalTable.CapacityAutoScalingSettingsProperty = {
  maxCapacity: 123,
  minCapacity: 123,
  targetTrackingScalingPolicyConfiguration: {
    targetValue: 123,

    // the properties below are optional
    disableScaleIn: false,
    scaleInCooldown: 123,
    scaleOutCooldown: 123,
  },

  // the properties below are optional
  seedCapacity: 123,
};

Properties

NameTypeDescription
maxCapacitynumberThe maximum provisioned capacity units for the global table.
minCapacitynumberThe minimum provisioned capacity units for the global table.
targetTrackingScalingPolicyConfigurationIResolvable | TargetTrackingScalingPolicyConfigurationPropertyDefines a target tracking scaling policy.
seedCapacity?numberWhen switching billing mode from PAY_PER_REQUEST to PROVISIONED , DynamoDB requires you to specify read and write capacity unit values for the table and for each global secondary index.

maxCapacity

Type: number

The maximum provisioned capacity units for the global table.


minCapacity

Type: number

The minimum provisioned capacity units for the global table.


targetTrackingScalingPolicyConfiguration

Type: IResolvable | TargetTrackingScalingPolicyConfigurationProperty

Defines a target tracking scaling policy.


seedCapacity?

Type: number (optional)

When switching billing mode from PAY_PER_REQUEST to PROVISIONED , DynamoDB requires you to specify read and write capacity unit values for the table and for each global secondary index.

These values will be applied to all replicas. The table will use these provisioned values until CloudFormation creates the autoscaling policies you configured in your template. CloudFormation cannot determine what capacity the table and its global secondary indexes will require in this time period, since they are application-dependent.

If you want to switch a table's billing mode from PAY_PER_REQUEST to PROVISIONED , you must specify a value for this property for each autoscaled resource. If you specify different values for the same resource in different regions, CloudFormation will use the highest value found in either the SeedCapacity or ReadCapacityUnits properties. For example, if your global secondary index myGSI has a SeedCapacity of 10 in us-east-1 and a fixed ReadCapacityUnits of 20 in eu-west-1, CloudFormation will initially set the read capacity for myGSI to 20. Note that if you disable ScaleIn for myGSI in us-east-1, its read capacity units might not be set back to 10.

You must also specify a value for SeedCapacity when you plan to switch a table's billing mode from PROVISIONED to PAY_PER_REQUEST , because CloudFormation might need to roll back the operation (reverting the billing mode to PROVISIONED ) and this cannot succeed without specifying a value for SeedCapacity .