Keyspaces / Client / update_table
update_table#
- Keyspaces.Client.update_table(**kwargs)#
Adds new columns to the table or updates one of the table’s settings, for example capacity mode, encryption, point-in-time recovery, or ttl settings. Note that you can only update one specific table setting per update operation.
See also: AWS API Documentation
Request Syntax
response = client.update_table( keyspaceName='string', tableName='string', addColumns=[ { 'name': 'string', 'type': 'string' }, ], capacitySpecification={ 'throughputMode': 'PAY_PER_REQUEST'|'PROVISIONED', 'readCapacityUnits': 123, 'writeCapacityUnits': 123 }, encryptionSpecification={ 'type': 'CUSTOMER_MANAGED_KMS_KEY'|'AWS_OWNED_KMS_KEY', 'kmsKeyIdentifier': 'string' }, pointInTimeRecovery={ 'status': 'ENABLED'|'DISABLED' }, ttl={ 'status': 'ENABLED' }, defaultTimeToLive=123, clientSideTimestamps={ 'status': 'ENABLED' } )
- Parameters:
keyspaceName (string) –
[REQUIRED]
The name of the keyspace the specified table is stored in.
tableName (string) –
[REQUIRED]
The name of the table.
addColumns (list) –
For each column to be added to the specified table:
name
- The name of the column.type
- An Amazon Keyspaces data type. For more information, see Data types in the Amazon Keyspaces Developer Guide .
(dict) –
The names and data types of regular columns.
name (string) – [REQUIRED]
The name of the column.
type (string) – [REQUIRED]
The data type of the column. For a list of available data types, see Data types in the Amazon Keyspaces Developer Guide .
capacitySpecification (dict) –
Modifies the read/write throughput capacity mode for the table. The options are:
throughputMode:PAY_PER_REQUEST
andthroughputMode:PROVISIONED
- Provisioned capacity mode requiresreadCapacityUnits
andwriteCapacityUnits
as input.
The default is
throughput_mode:PAY_PER_REQUEST
.For more information, see Read/write capacity modes in the Amazon Keyspaces Developer Guide .
throughputMode (string) – [REQUIRED]
The read/write throughput capacity mode for a table. The options are:
throughputMode:PAY_PER_REQUEST
andthroughputMode:PROVISIONED
- Provisioned capacity mode requiresreadCapacityUnits
andwriteCapacityUnits
as input.
The default is
throughput_mode:PAY_PER_REQUEST
.For more information, see Read/write capacity modes in the Amazon Keyspaces Developer Guide .
readCapacityUnits (integer) –
The throughput capacity specified for
read
operations defined inread capacity units
(RCUs)
.writeCapacityUnits (integer) –
The throughput capacity specified for
write
operations defined inwrite capacity units
(WCUs)
.
encryptionSpecification (dict) –
Modifies the encryption settings of the table. You can choose one of the following KMS key (KMS key):
type:AWS_OWNED_KMS_KEY
- This key is owned by Amazon Keyspaces.type:CUSTOMER_MANAGED_KMS_KEY
- This key is stored in your account and is created, owned, and managed by you. This option requires thekms_key_identifier
of the KMS key in Amazon Resource Name (ARN) format as input.
The default is
AWS_OWNED_KMS_KEY
.For more information, see Encryption at rest in the Amazon Keyspaces Developer Guide .
type (string) – [REQUIRED]
The encryption option specified for the table. You can choose one of the following KMS keys (KMS keys):
type:AWS_OWNED_KMS_KEY
- This key is owned by Amazon Keyspaces.type:CUSTOMER_MANAGED_KMS_KEY
- This key is stored in your account and is created, owned, and managed by you. This option requires thekms_key_identifier
of the KMS key in Amazon Resource Name (ARN) format as input.
The default is
type:AWS_OWNED_KMS_KEY
.For more information, see Encryption at rest in the Amazon Keyspaces Developer Guide .
kmsKeyIdentifier (string) –
The Amazon Resource Name (ARN) of the customer managed KMS key, for example
kms_key_identifier:ARN
.
pointInTimeRecovery (dict) –
Modifies the
pointInTimeRecovery
settings of the table. The options are:status=ENABLED
status=DISABLED
If it’s not specified, the default is
status=DISABLED
.For more information, see Point-in-time recovery in the Amazon Keyspaces Developer Guide .
status (string) – [REQUIRED]
The options are:
status=ENABLED
status=DISABLED
ttl (dict) –
Modifies Time to Live custom settings for the table. The options are:
status:enabled
status:disabled
The default is
status:disabled
. Afterttl
is enabled, you can’t disable it for the table.For more information, see Expiring data by using Amazon Keyspaces Time to Live (TTL) in the Amazon Keyspaces Developer Guide .
status (string) – [REQUIRED]
Shows how to enable custom Time to Live (TTL) settings for the specified table.
defaultTimeToLive (integer) –
The default Time to Live setting in seconds for the table.
For more information, see Setting the default TTL value for a table in the Amazon Keyspaces Developer Guide .
clientSideTimestamps (dict) –
Enables client-side timestamps for the table. By default, the setting is disabled. You can enable client-side timestamps with the following option:
status: "enabled"
Once client-side timestamps are enabled for a table, this setting cannot be disabled.
status (string) – [REQUIRED]
Shows how to enable client-side timestamps settings for the specified table.
- Return type:
dict
- Returns:
Response Syntax
{ 'resourceArn': 'string' }
Response Structure
(dict) –
resourceArn (string) –
The Amazon Resource Name (ARN) of the modified table.
Exceptions
Keyspaces.Client.exceptions.ValidationException
Keyspaces.Client.exceptions.ServiceQuotaExceededException
Keyspaces.Client.exceptions.InternalServerException
Keyspaces.Client.exceptions.ConflictException
Keyspaces.Client.exceptions.AccessDeniedException
Keyspaces.Client.exceptions.ResourceNotFoundException