Create a new table with client-side timestamps in Amazon Keyspaces - Amazon Keyspaces (for Apache Cassandra)
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

Create a new table with client-side timestamps in Amazon Keyspaces

Follow these examples to create a new Amazon Keyspaces table with client-side timestamps enabled using the Amazon Keyspaces Amazon Web Services Management Console, Cassandra Query Language (CQL), or the Amazon Command Line Interface

Console
Create a new table with client-side timestamps (console)
  1. Sign in to the Amazon Web Services Management Console, and open the Amazon Keyspaces console at https://console.amazonaws.cn/keyspaces/home.

  2. In the navigation pane, choose Tables, and then choose Create table.

  3. On the Create table page in the Table details section, select a keyspace and provide a name for the new table.

  4. In the Schema section, create the schema for your table.

  5. In the Table settings section, choose Customize settings.

  6. Continue to Client-side timestamps.

    Choose Turn on client-side timestamps to turn on client-side timestamps for the table.

  7. Choose Create table. Your table is created with client-side timestamps turned on.

Cassandra Query Language (CQL)
Create a new table using CQL
  1. To create a new table with client-side timestamps enabled using CQL, you can use the following example.

    CREATE TABLE my_keyspace.my_table ( userid uuid, time timeuuid, subject text, body text, user inet, PRIMARY KEY (userid, time) ) WITH CUSTOM_PROPERTIES = {'client_side_timestamps': {'status': 'enabled'}};
  2. To confirm the client-side timestamps settings for the new table, use a SELECT statement to review the custom_properties as shown in the following example.

    SELECT custom_properties from system_schema_mcs.tables where keyspace_name = 'my_keyspace' and table_name = 'my_table';

    The output of this statement shows the status for client-side timestamps.

    'client_side_timestamps': {'status': 'enabled'}
Amazon CLI
Create a new table using the Amazon CLI
  1. To create a new table with client-side timestamps enabled, you can use the following example.

    ./aws keyspaces create-table \ --keyspace-name my_keyspace \ --table-name my_table \ --client-side-timestamps 'status=ENABLED' \ --schema-definition 'allColumns=[{name=id,type=int},{name=date,type=timestamp},{name=name,type=text}],partitionKeys=[{name=id}]'
  2. To confirm that client-side timestamps are turned on for the new table, run the following code.

    ./aws keyspaces get-table \ --keyspace-name my_keyspace \ --table-name my_table

    The output should look similar to this example.

    { "keyspaceName": "my_keyspace", "tableName": "my_table", "resourceArn": "arn:aws:cassandra:us-east-2:555555555555:/keyspace/my_keyspace/table/my_table", "creationTimestamp": 1662681206.032, "status": "ACTIVE", "schemaDefinition": { "allColumns": [ { "name": "id", "type": "int" }, { "name": "date", "type": "timestamp" }, { "name": "name", "type": "text" } ], "partitionKeys": [ { "name": "id" } ], "clusteringKeys": [], "staticColumns": [] }, "capacitySpecification": { "throughputMode": "PAY_PER_REQUEST", "lastUpdateToPayPerRequestTimestamp": 1662681206.032 }, "encryptionSpecification": { "type": "AWS_OWNED_KMS_KEY" }, "pointInTimeRecovery": { "status": "DISABLED" }, "clientSideTimestamps": { "status": "ENABLED" }, "ttl": { "status": "ENABLED" }, "defaultTimeToLive": 0, "comment": { "message": "" } }