本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 Amazon Keyspaces 中存取 CDC 串流中的記錄
若要存取串流中的記錄,請使用 Amazon Keyspaces Streams API。下一節包含如何使用 存取記錄的範例 AWS CLI。
如要了解必要的許可,請參閱 設定許可以在 Amazon Keyspaces 中使用 CDC 串流。
使用 存取串流中的記錄 AWS CLI
您可以使用 Amazon Keyspaces Streams API 來存取串流的變更記錄。如需詳細資訊,請參閱 Amazon Keyspaces Streams API 參考。若要擷取串流中的碎片,您可以使用
get-stream
API,如下列範例所示。aws keyspacesstreams get-stream \ --stream-arn 'arn:aws:cassandra:
aws-region
:111122223333:/keyspace/mykeyspace/table/mytable/stream/STREAM_LABEL
'以下為輸出範例。
{ "StreamArn": "arn:aws:cassandra:
aws-region
:111122223333:/keyspace/mykeyspace/table/mytable/stream/2023-05-11T21:21:33.291", "StreamStatus": "ENABLED", "StreamViewType": "NEW_AND_OLD_IMAGES", "CreationRequestDateTime": "<CREATION_TIME>", "KeyspaceName": "mykeyspace", "TableName": "mytable", "StreamLabel": "2023-05-11T21:21:33.291", "Shards": [ { "SequenceNumberRange": { "EndingSequenceNumber": "<END_SEQUENCE_NUMBER>", "StartingSequenceNumber": "<START_SEQUENCE_NUMBER>" }, "ShardId": "<SHARD_ID>" }, ] }若要從串流擷取記錄,請先取得迭代器,以提供您存取記錄的起點。若要這樣做,您可以使用上一個步驟中 API 傳回的 CDC 串流中的碎片。若要收集迭代器,您可以使用
get-shard-iterator
API。在此範例中,您會使用從碎片的最後一個修剪點或開頭TRIM_HORIZON
擷取的 類型反覆運算器)。aws keyspacesstreams get-shard-iterator \ --stream-arn 'arn:aws:cassandra:
aws-region
:111122223333:/keyspace/mykeyspace/table/mytable/stream/STREAM_LABEL
' \ --shard-id 'SHARD_ID
' \ --shard-iterator-type 'TRIM_HORIZON'命令的輸出如下列範例所示。
{ "ShardIterator": "<SHARD_ITERATOR>" }
若要使用
get-records
API 擷取 CDC 記錄,您可以使用最後一個步驟中傳回的迭代器。下列命令是此範例。aws keyspacesstreams get-records \ --shard-iterator '
SHARD_ITERATOR
' \ --limit 100