Table
Learn how to create, update, and manage AWS Cassandra Tables using Alchemy Cloud Control.
The Table resource allows you to create and manage AWS Cassandra Tables within your keyspaces, enabling you to store and query data effectively.
Minimal Example
Section titled “Minimal Example”Create a basic Cassandra table with required properties and a few common optional configurations.
import AWS from "alchemy/aws/control";
const cassandraTable = await AWS.Cassandra.Table("UserTable", { KeyspaceName: "UserKeyspace", TableName: "Users", PartitionKeyColumns: [ { Name: "userId", Type: "uuid" } ], RegularColumns: [ { Name: "userName", Type: "text" }, { Name: "email", Type: "text" } ], BillingMode: "PROVISIONED", ReplicaSpecifications: [ { RegionName: "us-east-1", ReplicaCount: 3 } ]});
Advanced Configuration
Section titled “Advanced Configuration”Configure a table with clustering key columns and point-in-time recovery enabled.
const advancedCassandraTable = await AWS.Cassandra.Table("AdvancedUserTable", { KeyspaceName: "UserKeyspace", TableName: "AdvancedUsers", PartitionKeyColumns: [ { Name: "userId", Type: "uuid" } ], ClusteringKeyColumns: [ { Name: "lastName", Type: "text" } ], RegularColumns: [ { Name: "firstName", Type: "text" }, { Name: "email", Type: "text" } ], PointInTimeRecoveryEnabled: true, EncryptionSpecification: { EncryptionType: "SSE_KMS", KmsKeyId: "arn:aws:kms:us-east-1:123456789012:key/abcd-1234-efgh-5678-ijkl" }});
Auto Scaling Configuration
Section titled “Auto Scaling Configuration”Set up auto-scaling for read and write capacity to handle varying workloads.
const autoScalingCassandraTable = await AWS.Cassandra.Table("AutoScalingUserTable", { KeyspaceName: "UserKeyspace", TableName: "AutoScalingUsers", PartitionKeyColumns: [ { Name: "userId", Type: "uuid" } ], RegularColumns: [ { Name: "userName", Type: "text" }, { Name: "email", Type: "text" } ], AutoScalingSpecifications: { ReadCapacity: { TargetUtilizationPercentage: 75, MinCapacity: 5, MaxCapacity: 50 }, WriteCapacity: { TargetUtilizationPercentage: 75, MinCapacity: 5, MaxCapacity: 50 } }});
Table with Tags
Section titled “Table with Tags”Create a table while assigning tags for resource management.
const taggedCassandraTable = await AWS.Cassandra.Table("TaggedUserTable", { KeyspaceName: "UserKeyspace", TableName: "TaggedUsers", PartitionKeyColumns: [ { Name: "userId", Type: "uuid" } ], RegularColumns: [ { Name: "userName", Type: "text" }, { Name: "email", Type: "text" } ], Tags: [ { Key: "Environment", Value: "Production" }, { Key: "Project", Value: "UserManagement" } ]});