AWS::Cassandra::TableYou can use the `AWS::Cassandra::Table` resource to create a new table in Amazon Keyspaces (for Apache Cassandra). For more information, see [Create a table](https://docs.aws.amazon.com/keyspaces/latest/devguide/getting-started.tables.html) in the *Amazon Keyspaces Developer Guide* .
import { CfnTable } from 'aws-cdk-lib/aws-cassandra';Or use the module namespace:
import * as cassandra from 'aws-cdk-lib/aws-cassandra';
// cassandra.CfnTableConfiguration passed to the constructor as CfnTableProps.
keyspaceNameRequiredstringThe name of the keyspace to create the table in. The keyspace must already exist.
partitionKeyColumnsRequiredIResolvable | IResolvable | ColumnProperty[]One or more columns that uniquely identify every row in the table. Every table must have a partition key.
autoScalingSpecificationsOptionalIResolvable | AutoScalingSpecificationPropertyThe optional auto scaling capacity settings for a table in provisioned capacity mode.
billingModeOptionalIResolvable | BillingModePropertyThe billing mode for the table, which determines how you'll be charged for reads and writes:. - *On-demand mode* (default) - You pay based on the actual reads and writes your application performs. - *Provisioned mode* - Lets you specify the number of reads and writes per second that you need for your application. If you don't specify a value for this property, then the table will use on-demand mode.
cdcSpecificationOptionalIResolvable | CdcSpecificationPropertyThe settings for the CDC stream of a table. For more information about CDC streams, see [Working with change data capture (CDC) streams in Amazon Keyspaces](https://docs.aws.amazon.com/keyspaces/latest/devguide/cdc.html) in the *Amazon Keyspaces Developer Guide* .
clientSideTimestampsEnabledOptionalboolean | IResolvableEnables client-side timestamps for the table. By default, the setting is disabled. You can enable client-side timestamps with the following option: - `status: "enabled"` After client-side timestamps are enabled for a table, you can't disable this setting.
clusteringKeyColumnsOptionalIResolvable | IResolvable | ClusteringKeyColumnProperty[]One or more columns that determine how the table data is sorted.
defaultTimeToLiveOptionalnumberThe default Time To Live (TTL) value for all rows in a table in seconds. The maximum configurable value is 630,720,000 seconds, which is the equivalent of 20 years. By default, the TTL value for a table is 0, which means data does not expire. For more information, see [Setting the default TTL value for a table](https://docs.aws.amazon.com/keyspaces/latest/devguide/TTL-how-it-works.html#ttl-howitworks_default_ttl) in the *Amazon Keyspaces Developer Guide* .
encryptionSpecificationOptionalIResolvable | EncryptionSpecificationPropertyThe encryption at rest options for the table. - *AWS owned key* (default) - The key is owned by Amazon Keyspaces . - *Customer managed key* - The key is stored in your account and is created, owned, and managed by you. > If you choose encryption with a customer managed key, you must specify a valid customer managed KMS key with permissions granted to Amazon Keyspaces. For more information, see [Encryption at rest in Amazon Keyspaces](https://docs.aws.amazon.com/keyspaces/latest/devguide/EncryptionAtRest.html) in the *Amazon Keyspaces Developer Guide* .
pointInTimeRecoveryEnabledOptionalboolean | IResolvableSpecifies if point-in-time recovery is enabled or disabled for the table. The options are `PointInTimeRecoveryEnabled=true` and `PointInTimeRecoveryEnabled=false` . If not specified, the default is `PointInTimeRecoveryEnabled=false` .
regularColumnsOptionalIResolvable | IResolvable | ColumnProperty[]One or more columns that are not part of the primary key - that is, columns that are *not* defined as partition key columns or clustering key columns. You can add regular columns to existing tables by adding them to the template.
replicaSpecificationsOptionalIResolvable | IResolvable | ReplicaSpecificationProperty[]The AWS Region specific settings of a multi-Region table. For a multi-Region table, you can configure the table's read capacity differently per AWS Region. You can do this by configuring the following parameters. - `region` : The Region where these settings are applied. (Required) - `readCapacityUnits` : The provisioned read capacity units. (Optional) - `readCapacityAutoScaling` : The read capacity auto scaling settings for the table. (Optional)
tableNameOptionalstringThe name of the table to be created. The table name is case sensitive. If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID for the table name. For more information, see [Name type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html) . > If you specify a name, you can't perform updates that require replacing this resource. You can perform updates that require no interruption or some interruption. If you must replace the resource, specify a new name. *Length constraints:* Minimum length of 3. Maximum length of 255. *Pattern:* `^[a-zA-Z0-9][a-zA-Z0-9_]{1,47}$`
tagsOptionalCfnTag[]An array of key-value pairs to apply to this resource. For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) .
warmThroughputOptionalIResolvable | WarmThroughputPropertyWarm throughput configuration for the table.
This L1 construct maps directly to the following CloudFormation resource type.
Our bi-weekly newsletter teaches hands-on AWS fundamentals. No certification fluff - just practical knowledge.
Subscribe to Newsletteraws-cassandraAWS::Cassandra::Table