Esempi di Kinesis che utilizzano AWS CLI
Gli esempi di codice seguenti mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface con Kinesis.
Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le operazioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.
Ogni esempio include un link al codice sorgente completo, dove è possibile trovare le istruzioni su come configurare ed eseguire il codice nel contesto.
Argomenti
Operazioni
L’esempio di codice seguente mostra come utilizzare add-tags-to-stream.
- AWS CLI
-
Come aggiungere tag a un flusso di dati
Nell’esempio seguente,
add-tags-to-streamassegna un tag con la chiavesamplekeye il valoreexampleal flusso specificato.aws kinesis add-tags-to-stream \ --stream-namesamplestream\ --tagssamplekey=exampleQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Tagging dei flussi nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta AddTagsToStream
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare create-stream.
- AWS CLI
-
Come creare un flusso di dati
L’esempio
create-streamseguente crea un flusso di dati denominato samplestream con 3 shard.aws kinesis create-stream \ --stream-namesamplestream\ --shard-count3Questo comando non produce alcun output.
Per ulteriori informazioni, consulta Creazione di un flusso nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta CreateStream
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare decrease-stream-retention-period.
- AWS CLI
-
Come ridurre il periodo di conservazione del flusso di dati
L’esempio
decrease-stream-retention-periodseguente riduce il periodo di conservazione (tempo durante il quale i record di dati sono accessibili dopo essere stati aggiunti al flusso) di un flusso denominato samplestream a 48 ore.aws kinesis decrease-stream-retention-period \ --stream-namesamplestream\ --retention-period-hours48Questo comando non produce alcun output.
Per ulteriori informazioni, consulta Modifica del periodo di conservazione dei dati nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta DecreaseStreamRetentionPeriod
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare delete-stream.
- AWS CLI
-
Come eliminare un flusso di dati
Nell’esempio seguente,
delete-streamelimina il flusso di dati specificato.aws kinesis delete-stream \ --stream-namesamplestreamQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Eliminazione di un flusso nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta DeleteStream
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare deregister-stream-consumer.
- AWS CLI
-
Come annullare la registrazione di un consumer del flusso di dati
L’esempio
deregister-stream-consumerseguente annulla la registrazione del consumer specificato dal flusso di dati specificato.aws kinesis deregister-stream-consumer \ --stream-arnarn:aws:kinesis:us-west-2:123456789012:stream/samplestream\ --consumer-nameKinesisConsumerApplicationQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Developing Consumers with Enhanced Fan-Out Using the Kinesis Data Streams API nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta DeregisterStreamConsumer
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare describe-limits.
- AWS CLI
-
Come descrivere i limiti degli shard
L’esempio
describe-limitsseguente mostra i limiti degli shard e l’utilizzo per l’account AWS corrente.aws kinesis describe-limitsOutput:
{ "ShardLimit": 500, "OpenShardCount": 29 }Per ulteriori informazioni, consulta Resharding di un flusso nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta DescribeLimits
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare describe-stream-consumer.
- AWS CLI
-
Come descrivere un consumer del flusso di dati
L’esempio
describe-stream-consumerseguente restituisce la descrizione del consumer specificato, registrato con il flusso di dati specificato.aws kinesis describe-stream-consumer \ --stream-arnarn:aws:kinesis:us-west-2:012345678912:stream/samplestream\ --consumer-nameKinesisConsumerApplicationOutput:
{ "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" } }Per ulteriori informazioni, consulta Lettura dei dati da Flusso di dati Amazon Kinesis nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta DescribeStreamConsumer
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare describe-stream-summary.
- AWS CLI
-
Come descrivere un riepilogo del flusso di dati
Nell’esempio seguente,
describe-stream-summaryfornisce un riepilogo della descrizione (senza l’elenco degli shard) del flusso di dati specificato.aws kinesis describe-stream-summary \ --stream-namesamplestreamOutput:
{ "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 } }Per ulteriori informazioni, consulta Creazione e gestione dei flussi nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta DescribeStreamSummary
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare describe-stream.
- AWS CLI
-
Come descrivere un flusso di dati
Nell’esempio seguente,
describe-streamrestituisce i dettagli del flusso di dati specificato.aws kinesis describe-stream \ --stream-namesamplestreamOutput:
{ "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 } }Per ulteriori informazioni, consulta Creazione e gestione dei flussi nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta DescribeStream
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare disable-enhanced-monitoring.
- AWS CLI
-
Come disabilitare il monitoraggio avanzato delle metriche a livello di shard
L’esempio
disable-enhanced-monitoringseguente disabilita il monitoraggio avanzato delle metriche a livello di shard per il flusso di dati Kinesis.aws kinesis disable-enhanced-monitoring \ --stream-namesamplestream--shard-level-metricsALLOutput:
{ "StreamName": "samplestream", "CurrentShardLevelMetrics": [ "IncomingBytes", "OutgoingRecords", "IteratorAgeMilliseconds", "IncomingRecords", "ReadProvisionedThroughputExceeded", "WriteProvisionedThroughputExceeded", "OutgoingBytes" ], "DesiredShardLevelMetrics": [] }Per ulteriori informazioni, consulta Monitoring Streams in Amazon Kinesis Data Streams nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta DisableEnhancedMonitoring
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare enable-enhanced-monitoring.
- AWS CLI
-
Come abilitare il monitoraggio avanzato delle metriche a livello di shard
L’esempio
enable-enhanced-monitoringseguente abilita il monitoraggio avanzato delle metriche a livello di shard per il flusso di dati Kinesis.aws kinesis enable-enhanced-monitoring \ --stream-namesamplestream\ --shard-level-metricsALLOutput:
{ "StreamName": "samplestream", "CurrentShardLevelMetrics": [], "DesiredShardLevelMetrics": [ "IncomingBytes", "OutgoingRecords", "IteratorAgeMilliseconds", "IncomingRecords", "ReadProvisionedThroughputExceeded", "WriteProvisionedThroughputExceeded", "OutgoingBytes" ] }Per ulteriori informazioni, consulta Monitoring Streams in Amazon Kinesis Data Streams nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta EnableEnhancedMonitoring
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare get-records.
- AWS CLI
-
Come ottenere record da uno shard
L’esempio
get-recordsseguente ottiene i record di dati dallo shard di un flusso di dati Kinesis utilizzando l’iteratore dello shard specificato.aws kinesis get-records \ --shard-iteratorAAAAAAAAAAF7/0mWD7IuHj1yGv/TKuNgx2ukD5xipCY4cy4gU96orWwZwcSXh3K9tAmGYeOZyLZrvzzeOFVf9iN99hUPw/w/b0YWYeehfNvnf1DYt5XpDJghLKr3DzgznkTmMymDP3R+3wRKeuEw6/kdxY2yKJH0veaiekaVc4N2VwK/GvaGP2Hh9Fg7N++q0Adg6fIDQPt4p8RpavDbk+A4sL9SWGE1Output:
{ "Records": [], "MillisBehindLatest": 80742000 }Per ulteriori informazioni, consulta Developing Consumers Using the Kinesis Data Streams API with the AWS SDK for Java nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta GetRecords
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare get-shard-iterator.
- AWS CLI
-
Come ottenere un iteratore di shard
L’esempio
get-shard-iteratorseguente utilizza il tipo di iteratore dello shardAT_SEQUENCE_NUMBERe genera un iteratore dello shard per avviare la lettura dei record di dati esattamente dalla posizione indicata dal numero di sequenza specificato.aws kinesis get-shard-iterator \ --stream-namesamplestream\ --shard-idshardId-000000000001\ --shard-iterator-typeLATESTOutput:
{ "ShardIterator": "AAAAAAAAAAFEvJjIYI+3jw/4aqgH9FifJ+n48XWTh/IFIsbILP6o5eDueD39NXNBfpZ10WL5K6ADXk8w+5H+Qhd9cFA9k268CPXCz/kebq1TGYI7Vy+lUkA9BuN3xvATxMBGxRY3zYK05gqgvaIRn94O8SqeEqwhigwZxNWxID3Ej7YYYcxQi8Q/fIrCjGAy/n2r5Z9G864YpWDfN9upNNQAR/iiOWKs" }Per ulteriori informazioni, consulta Developing Consumers Using the Kinesis Data Streams API with the AWS SDK for Java nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta GetShardIterator
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare increase-stream-retention-period.
- AWS CLI
-
Come aumentare il periodo di conservazione del flusso di dati
L’esempio
increase-stream-retention-periodseguente aumenta il periodo di conservazione (tempo durante il quale i record di dati sono accessibili dopo essere stati aggiunti al flusso) del flusso specificato a 168 ore.aws kinesis increase-stream-retention-period \ --stream-namesamplestream\ --retention-period-hours168Questo comando non produce alcun output.
Per ulteriori informazioni, consulta Modifica del periodo di conservazione dei dati nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta IncreaseStreamRetentionPeriod
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-shards.
- AWS CLI
-
Come elencare gli shard in un flusso di dati
L’esempio
list-shardsseguente elenca tutti gli shard nel flusso specificato, a partire dallo shard il cui ID segue immediatamente il parametroexclusive-start-shard-idspecificato dishardId-000000000000.aws kinesis list-shards \ --stream-namesamplestream\ --exclusive-start-shard-idshardId-000000000000Output:
{ "Shards": [ { "ShardId": "shardId-000000000001", "HashKeyRange": { "StartingHashKey": "113427455640312821154458202477256070485", "EndingHashKey": "226854911280625642308916404954512140969" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871682979337187563555549332609155523708941634633746" } }, { "ShardId": "shardId-000000000002", "HashKeyRange": { "StartingHashKey": "226854911280625642308916404954512140970", "EndingHashKey": "340282366920938463463374607431768211455" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871683001637932762086172474144873796357303140614178" } } ] }Per ulteriori informazioni, consulta Elenco degli shard nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta ListShards
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-streams.
- AWS CLI
-
Come elencare i flussi di dati
Nell’esempio seguente,
list-streamselenca tutti i flussi di dati attivi nell’account e nella Regione correnti.aws kinesis list-streamsOutput:
{ "StreamNames": [ "samplestream", "samplestream1" ] }Per ulteriori informazioni, consulta Elenco di flussi nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta ListStreams
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-tags-for-stream.
- AWS CLI
-
Come elencare i tag di un flusso di dati
Nell’esempio seguente,
list-tags-for-streamelenca i tag associati al flusso di dati specificato.aws kinesis list-tags-for-stream \ --stream-namesamplestreamOutput:
{ "Tags": [ { "Key": "samplekey", "Value": "example" } ], "HasMoreTags": false }Per ulteriori informazioni, consulta Tagging dei flussi nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta ListTagsForStream
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare merge-shards.
- AWS CLI
-
Come unire shard
L’esempio
merge-shardsseguente unisce due shard adiacenti con ID shardId-000000000000 e shardId-000000000001 nel flusso di dati specificato, combinandoli in un unico shard.aws kinesis merge-shards \ --stream-namesamplestream\ --shard-to-mergeshardId-000000000000\ --adjacent-shard-to-mergeshardId-000000000001Questo comando non produce alcun output.
Per ulteriori informazioni, consulta Unione di due shard nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta MergeShards
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare put-record.
- AWS CLI
-
Come scrivere un record in un flusso di dati
L’esempio
put-recordseguente scrive un unico record di dati nel flusso di dati specificato utilizzando la chiave di partizione specificata.aws kinesis put-record \ --stream-namesamplestream\ --datasampledatarecord\ --partition-keysamplepartitionkeyOutput:
{ "ShardId": "shardId-000000000009", "SequenceNumber": "49600902273357540915989931256901506243878407835297513618", "EncryptionType": "KMS" }Per ulteriori informazioni, consulta Developing Producers Using the Amazon Kinesis Data Streams API with the AWS SDK for Java nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta PutRecord
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare put-records.
- AWS CLI
-
Come scrivere più record in un flusso di dati
L’esempio
put-recordsseguente scrive un record di dati utilizzando la chiave di partizione specificata e un altro record di dati utilizzando una chiave di partizione diversa in un’unica chiamata.aws kinesis put-records \ --stream-namesamplestream\ --recordsData=blob1,PartitionKey=partitionkey1Data=blob2,PartitionKey=partitionkey2Output:
{ "FailedRecordCount": 0, "Records": [ { "SequenceNumber": "49600883331171471519674795588238531498465399900093808706", "ShardId": "shardId-000000000004" }, { "SequenceNumber": "49600902273357540915989931256902715169698037101720764562", "ShardId": "shardId-000000000009" } ], "EncryptionType": "KMS" }Per ulteriori informazioni, consulta Developing Producers Using the Amazon Kinesis Data Streams API with the AWS SDK for Java nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta PutRecords
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare register-stream-consumer.
- AWS CLI
-
Come registrare un consumer del flusso di dati
L’esempio
register-stream-consumerseguente registra un consumer denominatoKinesisConsumerApplicationcon il flusso di dati specificato.aws kinesis register-stream-consumer \ --stream-arnarn:aws:kinesis:us-west-2:012345678912:stream/samplestream\ --consumer-nameKinesisConsumerApplicationOutput:
{ "Consumer": { "ConsumerName": "KinesisConsumerApplication", "ConsumerARN": "arn:aws:kinesis:us-west-2: 123456789012:stream/samplestream/consumer/KinesisConsumerApplication:1572383852", "ConsumerStatus": "CREATING", "ConsumerCreationTimestamp": 1572383852.0 } }Per ulteriori informazioni, consulta Developing Consumers with Enhanced Fan-Out Using the Kinesis Data Streams API nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta RegisterStreamConsumer
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare remove-tags-from-stream.
- AWS CLI
-
Come rimuovere i tag da un flusso di dati
L’esempio
remove-tags-from-streamseguente rimuove il tag con la chiave specificata dal flusso di dati specificato.aws kinesis remove-tags-from-stream \ --stream-namesamplestream\ --tag-keyssamplekeyQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Tagging dei flussi nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta RemoveTagsFromStream
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare split-shard.
- AWS CLI
-
Come dividere gli shard
L’esempio
split-shardseguente divide lo shard specificato in due nuovi shard utilizzando una nuova chiave hash iniziale pari a 10.aws kinesis split-shard \ --stream-namesamplestream\ --shard-to-splitshardId-000000000000\ --new-starting-hash-key10Questo comando non produce alcun output.
Per ulteriori informazioni, consulta Suddivisione di uno shard nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta SplitShard
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare start-stream-encryption.
- AWS CLI
-
Come abilitare la crittografia del flusso di dati
L’esempio
start-stream-encryptionseguente abilita la crittografia lato server per il flusso specificato, utilizzando la chiave AWS KMS specificata.aws kinesis start-stream-encryption \ --encryption-typeKMS\ --key-idarn:aws:kms:us-west-2:012345678912:key/a3c4a7cd-728b-45dd-b334-4d3eb496e452\ --stream-namesamplestreamQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Protezione dei dati in Flusso di dati Amazon Kinesis nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta StartStreamEncryption
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare stop-stream-encryption.
- AWS CLI
-
Come disabilitare la crittografia del flusso di dati
L’esempio
stop-stream-encryptionseguente disabilita la crittografia lato server per il flusso specificato, utilizzando la chiave AWS KMS specificata.aws kinesis start-stream-encryption \ --encryption-typeKMS\ --key-idarn:aws:kms:us-west-2:012345678912:key/a3c4a7cd-728b-45dd-b334-4d3eb496e452\ --stream-namesamplestreamQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Protezione dei dati in Flusso di dati Amazon Kinesis nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta StopStreamEncryption
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare update-shard-count.
- AWS CLI
-
Come aggiornare il numero di shard in un flusso di dati
L’esempio
update-shard-countseguente aggiorna il numero di shard del flusso di dati specificato a 6. Questo esempio utilizza un dimensionamento uniforme, che crea shard di dimensioni uguali.aws kinesis update-shard-count \ --stream-namesamplestream\ --scaling-typeUNIFORM_SCALING\ --target-shard-count6Output:
{ "StreamName": "samplestream", "CurrentShardCount": 3, "TargetShardCount": 6 }Per ulteriori informazioni, consulta Resharding di un flusso nella Guida per gli sviluppatori di Flusso di dati Amazon Kinesis.
-
Per informazioni dettagliate sull’API, consulta UpdateShardCount
nella AWS CLI Command Reference.
-