

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在 Amazon Keyspaces 中存取 CDC 串流中的記錄
<a name="keyspaces-records-cdc"></a>

若要存取串流中的記錄，請使用 [Amazon Keyspaces Streams API](https://docs.aws.amazon.com/keyspaces/latest/StreamsAPIReference/Welcome.html)。下一節包含如何使用 存取記錄的範例 AWS CLI。

如要了解必要的許可，請參閱 [設定許可以在 Amazon Keyspaces 中使用 CDC 串流](configure-cdc-permissions.md)。

**使用 存取串流中的記錄 AWS CLI**

1. 您可以使用 Amazon Keyspaces Streams API 來存取串流的變更記錄。如需詳細資訊，請參閱 [https://docs.aws.amazon.com/keyspaces/latest/StreamsAPIReference/Welcome.html](https://docs.aws.amazon.com/keyspaces/latest/StreamsAPIReference/Welcome.html)。若要擷取串流中的碎片，您可以使用 `get-stream` API，如下列範例所示。

   ```
   aws keyspacesstreams get-stream \
   --stream-arn 'arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable/stream/STREAM_LABEL'
   ```

   以下為輸出範例。

   ```
   {
      "StreamArn": "arn:aws:cassandra:us-east-1: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>"
           },
       ]
   }
   ```

1. 若要從串流擷取記錄，請先取得迭代器，以提供您存取記錄的起點。若要這樣做，您可以使用上一個步驟中 API 傳回的 CDC 串流中的碎片。若要收集迭代器，您可以使用 `get-shard-iterator` API。在此範例中，您會使用從碎片的最後一個裁剪點或開頭`TRIM_HORIZON`擷取的類型反覆運算器）。

   ```
   aws keyspacesstreams get-shard-iterator \
   --stream-arn 'arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable/stream/STREAM_LABEL' \
   --shard-id 'SHARD_ID' \
   --shard-iterator-type 'TRIM_HORIZON'
   ```

   命令的輸出看起來與下列範例類似。

   ```
   {
       "ShardIterator": "<SHARD_ITERATOR>" 
   }
   ```

1. 若要使用 `get-records` API 擷取 CDC 記錄，您可以使用最後一個步驟中傳回的迭代器。下列命令是此範例。

   ```
   aws keyspacesstreams get-records \
   --shard-iterator 'SHARD_ITERATOR' \
   --limit 100
   ```