文件 AWS SDK AWS 範例 SDK 儲存庫中有更多可用的
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 的 Kinesis 範例 AWS CLI
下列程式碼範例示範如何搭配 AWS Command Line Interface Kinesis 使用 來執行動作和實作常見案例。
Actions 是大型程式的程式碼摘錄,必須在內容中執行。雖然 動作會示範如何呼叫個別服務函數,但您可以在其相關案例中查看內容中的動作。
每個範例都包含完整原始程式碼的連結,您可以在其中找到如何在內容中設定和執行程式碼的指示。
主題
動作
下列程式碼範例示範如何使用 add-tags-to-stream
。
- AWS CLI
-
將標籤新增至資料串流
下列
add-tags-to-stream
範例會將具有金鑰samplekey
和值的標籤指派給example
指定的串流。aws kinesis add-tags-to-stream \ --stream-name
samplestream
\ --tagssamplekey=example
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的標記串流。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 AddTagsToStream
。
-
下列程式碼範例示範如何使用 create-stream
。
- AWS CLI
-
建立資料串流
下列
create-stream
範例會建立名為 samplestream 的資料串流,其中包含 3 個碎片。aws kinesis create-stream \ --stream-name
samplestream
\ --shard-count3
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的建立串流。 Amazon Kinesis
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 CreateStream
。
-
下列程式碼範例示範如何使用 decrease-stream-retention-period
。
- AWS CLI
-
縮短資料串流保留期
下列
decrease-stream-retention-period
範例會將名為 Samplestream 之串流的保留期間 (資料記錄新增至串流後可存取的時間長度) 縮短為 48 小時。aws kinesis decrease-stream-retention-period \ --stream-name
samplestream
\ --retention-period-hours48
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的變更資料保留期。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DecreaseStreamRetentionPeriod
。
-
下列程式碼範例示範如何使用 delete-stream
。
- AWS CLI
-
刪除資料串流
下列
delete-stream
範例會刪除指定的資料串流。aws kinesis delete-stream \ --stream-name
samplestream
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的刪除串流。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DeleteStream
。
-
下列程式碼範例示範如何使用 deregister-stream-consumer
。
- AWS CLI
-
若要取消註冊資料串流取用者
下列
deregister-stream-consumer
範例會從指定的資料串流取消註冊指定的取用者。aws kinesis deregister-stream-consumer \ --stream-arn
arn:aws:kinesis:us-west-2:123456789012:stream/samplestream
\ --consumer-nameKinesisConsumerApplication
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon Kinesis Kinesis Data Streams 開發人員指南中的使用 Kinesis Data Streams API 開發具有增強型扇出的消費者。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DeregisterStreamConsumer
。
-
下列程式碼範例示範如何使用 describe-limits
。
- AWS CLI
-
描述碎片限制
下列
describe-limits
範例顯示目前 AWS 帳戶的碎片限制和用量。aws kinesis describe-limits
輸出:
{ "ShardLimit": 500, "OpenShardCount": 29 }
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的重新分配串流。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DescribeLimits
。
-
下列程式碼範例示範如何使用 describe-stream-consumer
。
- AWS CLI
-
描述資料串流取用者
下列
describe-stream-consumer
範例會傳回使用指定資料串流註冊的指定取用者描述。aws kinesis describe-stream-consumer \ --stream-arn
arn:aws:kinesis:us-west-2:012345678912:stream/samplestream
\ --consumer-nameKinesisConsumerApplication
輸出:
{ "ConsumerDescription": { "ConsumerName": "KinesisConsumerApplication", "ConsumerARN": "arn:aws:kinesis:us-west-2:123456789012:stream/samplestream/consumer/KinesisConsumerApplication:1572383852", "ConsumerStatus": "ACTIVE", "ConsumerCreationTimestamp": 1572383852.0, "StreamARN": "arn:aws:kinesis:us-west-2:123456789012:stream/samplestream" } }
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的從 Amazon Kinesis Data Streams 讀取資料。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DescribeStreamConsumer
。
-
下列程式碼範例示範如何使用 describe-stream-summary
。
- AWS CLI
-
描述資料串流摘要
下列
describe-stream-summary
範例提供指定資料串流的摘要描述 (不含碎片清單)。aws kinesis describe-stream-summary \ --stream-name
samplestream
輸出:
{ "StreamDescriptionSummary": { "StreamName": "samplestream", "StreamARN": "arn:aws:kinesis:us-west-2:123456789012:stream/samplestream", "StreamStatus": "ACTIVE", "RetentionPeriodHours": 48, "StreamCreationTimestamp": 1572297168.0, "EnhancedMonitoring": [ { "ShardLevelMetrics": [] } ], "EncryptionType": "NONE", "OpenShardCount": 3, "ConsumerCount": 0 } }
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的建立和管理串流。 Amazon Kinesis
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DescribeStreamSummary
。
-
下列程式碼範例示範如何使用 describe-stream
。
- AWS CLI
-
描述資料串流
下列
describe-stream
範例會傳回指定資料串流的詳細資訊。aws kinesis describe-stream \ --stream-name
samplestream
輸出:
{ "StreamDescription": { "Shards": [ { "ShardId": "shardId-000000000000", "HashKeyRange": { "StartingHashKey": "0", "EndingHashKey": "113427455640312821154458202477256070484" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871682957036442365024926191073437251060580128653314" } }, { "ShardId": "shardId-000000000001", "HashKeyRange": { "StartingHashKey": "113427455640312821154458202477256070485", "EndingHashKey": "226854911280625642308916404954512140969" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871682979337187563555549332609155523708941634633746" } }, { "ShardId": "shardId-000000000002", "HashKeyRange": { "StartingHashKey": "226854911280625642308916404954512140970", "EndingHashKey": "340282366920938463463374607431768211455" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871683001637932762086172474144873796357303140614178" } } ], "StreamARN": "arn:aws:kinesis:us-west-2:123456789012:stream/samplestream", "StreamName": "samplestream", "StreamStatus": "ACTIVE", "RetentionPeriodHours": 24, "EnhancedMonitoring": [ { "ShardLevelMetrics": [] } ], "EncryptionType": "NONE", "KeyId": null, "StreamCreationTimestamp": 1572297168.0 } }
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的建立和管理串流。 Amazon Kinesis
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DescribeStream
。
-
下列程式碼範例示範如何使用 disable-enhanced-monitoring
。
- AWS CLI
-
停用碎片層級指標的增強型監控
下列
disable-enhanced-monitoring
範例會停用碎片層級指標的增強型 Kinesis 資料串流監控。aws kinesis disable-enhanced-monitoring \ --stream-name
samplestream
--shard-level-metricsALL
輸出:
{ "StreamName": "samplestream", "CurrentShardLevelMetrics": [ "IncomingBytes", "OutgoingRecords", "IteratorAgeMilliseconds", "IncomingRecords", "ReadProvisionedThroughputExceeded", "WriteProvisionedThroughputExceeded", "OutgoingBytes" ], "DesiredShardLevelMetrics": [] }
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的監控 Amazon Kinesis Data Streams 中的串流。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 DisableEnhancedMonitoring
。
-
下列程式碼範例示範如何使用 enable-enhanced-monitoring
。
- AWS CLI
-
啟用碎片層級指標的增強型監控
下列
enable-enhanced-monitoring
範例可針對碎片層級指標啟用增強型 Kinesis 資料串流監控。aws kinesis enable-enhanced-monitoring \ --stream-name
samplestream
\ --shard-level-metricsALL
輸出:
{ "StreamName": "samplestream", "CurrentShardLevelMetrics": [], "DesiredShardLevelMetrics": [ "IncomingBytes", "OutgoingRecords", "IteratorAgeMilliseconds", "IncomingRecords", "ReadProvisionedThroughputExceeded", "WriteProvisionedThroughputExceeded", "OutgoingBytes" ] }
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的監控 Amazon Kinesis Data Streams 中的串流。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 EnableEnhancedMonitoring
。
-
下列程式碼範例示範如何使用 get-records
。
- AWS CLI
-
從碎片取得記錄
下列
get-records
範例會使用指定的碎片迭代器,從 Kinesis 資料串流的碎片取得資料記錄。aws kinesis get-records \ --shard-iterator
AAAAAAAAAAF7/0mWD7IuHj1yGv/TKuNgx2ukD5xipCY4cy4gU96orWwZwcSXh3K9tAmGYeOZyLZrvzzeOFVf9iN99hUPw/w/b0YWYeehfNvnf1DYt5XpDJghLKr3DzgznkTmMymDP3R+3wRKeuEw6/kdxY2yKJH0veaiekaVc4N2VwK/GvaGP2Hh9Fg7N++q0Adg6fIDQPt4p8RpavDbk+A4sL9SWGE1
輸出:
{ "Records": [], "MillisBehindLatest": 80742000 }
如需詳細資訊,請參閱 Amazon Kinesis Kinesis Data Streams 開發人員指南中的使用 Kinesis Data Streams API 搭配適用於 Java 的 AWS SDK 開發消費者。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 GetRecords
。
-
下列程式碼範例示範如何使用 get-shard-iterator
。
- AWS CLI
-
若要取得碎片迭代器
下列
get-shard-iterator
範例使用AT_SEQUENCE_NUMBER
碎片迭代器類型,並產生碎片迭代器,以從以指定序號表示的位置開始讀取資料記錄。aws kinesis get-shard-iterator \ --stream-name
samplestream
\ --shard-idshardId-000000000001
\ --shard-iterator-typeLATEST
輸出:
{ "ShardIterator": "AAAAAAAAAAFEvJjIYI+3jw/4aqgH9FifJ+n48XWTh/IFIsbILP6o5eDueD39NXNBfpZ10WL5K6ADXk8w+5H+Qhd9cFA9k268CPXCz/kebq1TGYI7Vy+lUkA9BuN3xvATxMBGxRY3zYK05gqgvaIRn94O8SqeEqwhigwZxNWxID3Ej7YYYcxQi8Q/fIrCjGAy/n2r5Z9G864YpWDfN9upNNQAR/iiOWKs" }
如需詳細資訊,請參閱 Amazon Kinesis Kinesis Data Streams 開發人員指南中的使用 Kinesis Data Streams API 搭配適用於 Java 的 AWS SDK 開發消費者。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 GetShardIterator
。
-
下列程式碼範例示範如何使用 increase-stream-retention-period
。
- AWS CLI
-
增加資料串流保留期
下列
increase-stream-retention-period
範例會將指定串流的保留期間 (資料記錄新增至串流後可存取的時間長度) 增加為 168 小時。aws kinesis increase-stream-retention-period \ --stream-name
samplestream
\ --retention-period-hours168
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的變更資料保留期。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 IncreaseStreamRetentionPeriod
。
-
下列程式碼範例示範如何使用 list-shards
。
- AWS CLI
-
若要列出資料串流中的碎片
下列
list-shards
範例會列出指定串流中的所有碎片,從碎片開始,其 ID 會立即遵循指定的exclusive-start-shard-id
shardId-000000000000
。aws kinesis list-shards \ --stream-name
samplestream
\ --exclusive-start-shard-idshardId-000000000000
輸出:
{ "Shards": [ { "ShardId": "shardId-000000000001", "HashKeyRange": { "StartingHashKey": "113427455640312821154458202477256070485", "EndingHashKey": "226854911280625642308916404954512140969" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871682979337187563555549332609155523708941634633746" } }, { "ShardId": "shardId-000000000002", "HashKeyRange": { "StartingHashKey": "226854911280625642308916404954512140970", "EndingHashKey": "340282366920938463463374607431768211455" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871683001637932762086172474144873796357303140614178" } } ] }
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的列出碎片。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 ListShards
。
-
下列程式碼範例示範如何使用 list-streams
。
- AWS CLI
-
列出資料串流
下列
list-streams
範例列出目前帳戶和區域中的所有作用中資料串流。aws kinesis list-streams
輸出:
{ "StreamNames": [ "samplestream", "samplestream1" ] }
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的列出串流。 Amazon Kinesis
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 ListStreams
。
-
下列程式碼範例示範如何使用 list-tags-for-stream
。
- AWS CLI
-
列出資料串流的標籤
下列
list-tags-for-stream
範例會列出連接至指定資料串流的標籤。aws kinesis list-tags-for-stream \ --stream-name
samplestream
輸出:
{ "Tags": [ { "Key": "samplekey", "Value": "example" } ], "HasMoreTags": false }
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的標記串流。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 ListTagsForStream
。
-
下列程式碼範例示範如何使用 merge-shards
。
- AWS CLI
-
合併碎片
下列
merge-shards
範例會將兩個相鄰碎片與指定資料串流中的 IDs of shardId-000000000000 和 shardId-000000000001 合併,並將其合併為單一碎片。aws kinesis merge-shards \ --stream-name
samplestream
\ --shard-to-mergeshardId-000000000000
\ --adjacent-shard-to-mergeshardId-000000000001
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的合併兩個碎片。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 MergeShards
。
-
下列程式碼範例示範如何使用 put-record
。
- AWS CLI
-
將記錄寫入資料串流
下列
put-record
範例會使用指定的分割區金鑰,將單一資料記錄寫入指定的資料串流。aws kinesis put-record \ --stream-name
samplestream
\ --datasampledatarecord
\ --partition-keysamplepartitionkey
輸出:
{ "ShardId": "shardId-000000000009", "SequenceNumber": "49600902273357540915989931256901506243878407835297513618", "EncryptionType": "KMS" }
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的使用 Amazon Kinesis Data Streams API 搭配 AWS SDK for Java 開發生產者。 Amazon Kinesis
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 PutRecord
。
-
下列程式碼範例示範如何使用 put-records
。
- AWS CLI
-
將多筆記錄寫入資料串流
下列
put-records
範例使用指定的分割區金鑰寫入資料記錄,並在單一呼叫中使用不同的分割區金鑰寫入另一個資料記錄。aws kinesis put-records \ --stream-name
samplestream
\ --recordsData=blob1,PartitionKey=partitionkey1
Data=blob2,PartitionKey=partitionkey2
輸出:
{ "FailedRecordCount": 0, "Records": [ { "SequenceNumber": "49600883331171471519674795588238531498465399900093808706", "ShardId": "shardId-000000000004" }, { "SequenceNumber": "49600902273357540915989931256902715169698037101720764562", "ShardId": "shardId-000000000009" } ], "EncryptionType": "KMS" }
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的使用 Amazon Kinesis Data Streams API 搭配 AWS SDK for Java 開發生產者。 Amazon Kinesis
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 PutRecords
。
-
下列程式碼範例示範如何使用 register-stream-consumer
。
- AWS CLI
-
註冊資料串流取用者
下列
register-stream-consumer
範例會註冊KinesisConsumerApplication
使用指定資料串流呼叫的取用者。aws kinesis register-stream-consumer \ --stream-arn
arn:aws:kinesis:us-west-2:012345678912:stream/samplestream
\ --consumer-nameKinesisConsumerApplication
輸出:
{ "Consumer": { "ConsumerName": "KinesisConsumerApplication", "ConsumerARN": "arn:aws:kinesis:us-west-2: 123456789012:stream/samplestream/consumer/KinesisConsumerApplication:1572383852", "ConsumerStatus": "CREATING", "ConsumerCreationTimestamp": 1572383852.0 } }
如需詳細資訊,請參閱 Amazon Kinesis Kinesis Data Streams 開發人員指南中的使用 Kinesis Data Streams API 開發具有增強型扇出的消費者。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 RegisterStreamConsumer
。
-
下列程式碼範例示範如何使用 remove-tags-from-stream
。
- AWS CLI
-
從資料串流移除標籤
下列
remove-tags-from-stream
範例會從指定的資料串流移除具有指定金鑰的標籤。aws kinesis remove-tags-from-stream \ --stream-name
samplestream
\ --tag-keyssamplekey
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的標記串流。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 RemoveTagsFromStream
。
-
下列程式碼範例示範如何使用 split-shard
。
- AWS CLI
-
若要分割碎片
下列
split-shard
範例使用新的開始雜湊金鑰 10,將指定的碎片分割為兩個新的碎片。aws kinesis split-shard \ --stream-name
samplestream
\ --shard-to-splitshardId-000000000000
\ --new-starting-hash-key10
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的分割碎片。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 SplitShard
。
-
下列程式碼範例示範如何使用 start-stream-encryption
。
- AWS CLI
-
啟用資料串流加密
下列
start-stream-encryption
範例會使用指定的 AWS KMS 金鑰,為指定的串流啟用伺服器端加密。aws kinesis start-stream-encryption \ --encryption-type
KMS
\ --key-idarn:aws:kms:us-west-2:012345678912:key/a3c4a7cd-728b-45dd-b334-4d3eb496e452
\ --stream-namesamplestream
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的 Amazon Kinesis Data Streams 中的資料保護。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 StartStreamEncryption
。
-
下列程式碼範例示範如何使用 stop-stream-encryption
。
- AWS CLI
-
停用資料串流加密
下列
stop-stream-encryption
範例使用指定的 AWS KMS 金鑰,停用指定串流的伺服器端加密。aws kinesis start-stream-encryption \ --encryption-type
KMS
\ --key-idarn:aws:kms:us-west-2:012345678912:key/a3c4a7cd-728b-45dd-b334-4d3eb496e452
\ --stream-namesamplestream
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的 Amazon Kinesis Data Streams Amazon Kinesis中的資料保護。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 StopStreamEncryption
。
-
下列程式碼範例示範如何使用 update-shard-count
。
- AWS CLI
-
更新資料串流中的碎片計數
下列
update-shard-count
範例會將指定資料串流的碎片計數更新為 6。此範例使用統一擴展,這會建立大小相等的碎片。aws kinesis update-shard-count \ --stream-name
samplestream
\ --scaling-typeUNIFORM_SCALING
\ --target-shard-count6
輸出:
{ "StreamName": "samplestream", "CurrentShardCount": 3, "TargetShardCount": 6 }
如需詳細資訊,請參閱 Amazon Kinesis Data Streams 開發人員指南中的重新分配串流。
-
如需 API 詳細資訊,請參閱 AWS CLI 命令參考中的 UpdateShardCount
。
-