本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Amazon Keyspaces 中创建新表时启用 CDC 流
要在创建表时启用 CDC 流,可以使用 CQL 中的CREATE TABLE
语句或带有的create-table
AWS CLI命令。
对于表中每更改一行,Amazon Keyspaces 都可以根据cdc_specification
您选择view_type
的内容捕获以下更改:
有关如何为直播添加标签的信息,请参阅创建表时向新直播添加标签。
Amazon Keyspaces CDC 要求存在服务相关角色 (AWSServiceRoleForAmazonKeyspacesCDC
),该角色代表您将来自亚马逊密钥空间 CDC 流的指标数据发布到您的"cloudwatch:namespace": "AWS/Cassandra"
CloudWatch 账户中。将自动为您创建此角色。有关更多信息,请参阅 在 Amazon Keyspaces CDC 直播中使用角色。
- Cassandra Query Language (CQL)
-
使用 CQL 创建表时启用 CDC 流
-
CREATE TABLE mykeyspace.mytable (a text, b text, PRIMARY KEY(a))
WITH CUSTOM_PROPERTIES={'cdc_specification': {'view_type': 'NEW_IMAGE'}} AND CDC = TRUE;
要确认直播设置,您可以使用以下语句。
SELECT keyspace_name, table_name, cdc, custom_properties FROM system_schema_mcs.tables WHERE keyspace_name = 'mykeyspace' AND table_name = 'mytable';
该语句的输出应类似于此。
SELECT keyspace_name, table_name, cdc, custom_properties FROM system_schema_mcs.tables WHERE keyspace_name = 'mykeyspace' AND table_name = 'mytable';keyspace_name | table_name | cdc | custom_properties
---------------+------------+------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
mykeyspace | mytable | True | {'capacity_mode': {'last_update_to_pay_per_request_timestamp': '1741383893782', 'throughput_mode': 'PAY_PER_REQUEST'}, 'cdc_specification': {'latest_stream_arn': 'arn:aws:cassandra:aws-region
:111122223333:/keyspace/mykeyspace/table/mytable/stream/2025-03-07T21:44:53.783', 'status': 'ENABLED', 'view_type': 'NEW_IMAGE'}, 'encryption_specification': {'encryption_type': 'AWS_OWNED_KMS_KEY'}, 'point_in_time_recovery': {'status': 'disabled'}}
>
- CLI
-
使用创建表时启用 CDC 流 AWS CLI
-
要创建直播,您可以使用以下语法。
aws keyspaces create-table \
--keyspace-name 'mykeyspace' \
--table-name 'mytable' \
--schema-definition 'allColumns=[{name=a,type=text},{name=b,type=text}],partitionKeys=[{name=a}]' \
--cdc-specification status=ENABLED,viewType=NEW_IMAGE
该命令的输出显示了标准create-table
响应,看起来与本示例类似。
{ "resourceArn": "arn:aws:cassandra:us-east-1:111222333444:/keyspace/mykeyspace/table/mytable" }