Ejemplos de Kinesis que utilizan la AWS CLI
En los siguientes ejemplos de código se muestra cómo realizar acciones e implementar escenarios comunes usando AWS Command Line Interface con Kinesis.
Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las distintas funciones de servicio, es posible ver las acciones en contexto en los escenarios relacionados.
En cada ejemplo se incluye un enlace al código de origen completo, con instrucciones de configuración y ejecución del código en el contexto.
Temas
Acciones
En el siguiente ejemplo de código, se muestra cómo utilizar add-tags-to-stream.
- AWS CLI
-
Para agregar etiquetas a un flujo de datos
El siguiente ejemplo de
add-tags-to-streamasigna una etiqueta con la clavesamplekeyy el valorexampleal flujo especificado.aws kinesis add-tags-to-stream \ --stream-namesamplestream\ --tagssamplekey=exampleEste comando no genera ninguna salida.
Para obtener más información, consulte Etiquetar sus flujos en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte AddTagsToStream
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar create-stream.
- AWS CLI
-
Creación de un flujo de datos
En el siguiente ejemplo de
create-streamse crea un flujo de datos denominado samplestream con 3 particiones.aws kinesis create-stream \ --stream-namesamplestream\ --shard-count3Este comando no genera ninguna salida.
Para obtener más información, consulte Creación de una secuencia en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte CreateStream
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar decrease-stream-retention-period.
- AWS CLI
-
Para reducir el período de retención del flujo de datos
En el siguiente ejemplo de
decrease-stream-retention-periodse reduce el período de retención (el período de tiempo en el que se puede acceder a los registros de datos después de agregarlos al flujo) de un flujo llamado samplestream a 48 horas.aws kinesis decrease-stream-retention-period \ --stream-namesamplestream\ --retention-period-hours48Este comando no genera ninguna salida.
Para obtener más información, consulte Changing the Data Retention Period en la Guía para desarrolladores de Amazon Kinesis.
-
Para obtener información sobre la API, consulte DecreaseStreamRetentionPeriod
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar delete-stream.
- AWS CLI
-
Eliminación de un flujo de datos
En el siguiente ejemplo de
delete-streamse elimina el flujo de datos especificado.aws kinesis delete-stream \ --stream-namesamplestreamEste comando no genera ninguna salida.
Para obtener más información, consulte Eliminación de una secuencia en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte DeleteStream
en la Referencia del comando de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar deregister-stream-consumer.
- AWS CLI
-
Para anular el registro de un consumidor de flujos de datos
En el ejemplo de
deregister-stream-consumersiguiente se anula el registro del consumidor especificado del flujo de datos también especificado.aws kinesis deregister-stream-consumer \ --stream-arnarn:aws:kinesis:us-west-2:123456789012:stream/samplestream\ --consumer-nameKinesisConsumerApplicationEste comando no genera ninguna salida.
Para obtener más información, consulte Desarrollo de consumidores mediante la API de Kinesis Data Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte DeregisterStreamConsumer
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar describe-limits.
- AWS CLI
-
Para describir los límites de partición
En el siguiente ejemplo de
describe-limitsse muestran los límites de partición y el uso de la cuenta actual de AWS.aws kinesis describe-limitsSalida:
{ "ShardLimit": 500, "OpenShardCount": 29 }Para obtener más información, consulte Resharding a Stream en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener detalles sobre la API, consulte DescribeLimits
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar describe-stream-consumer.
- AWS CLI
-
Para describir un consumidor de flujo de datos
En el siguiente ejemplo de
describe-stream-consumerse devuelve la descripción del consumidor especificado, registrado en el flujo de datos especificado.aws kinesis describe-stream-consumer \ --stream-arnarn:aws:kinesis:us-west-2:012345678912:stream/samplestream\ --consumer-nameKinesisConsumerApplicationSalida:
{ "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" } }Para obtener más información, consulte Reading Data from Amazon Kinesis Data Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte DescribeStreamConsumer
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar describe-stream-summary.
- AWS CLI
-
Para describir un resumen de flujo de datos
El siguiente ejemplo de
describe-stream-summaryproporciona una descripción resumida (sin la lista de particiones) del flujo de datos especificado.aws kinesis describe-stream-summary \ --stream-namesamplestreamSalida:
{ "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 } }Para obtener más información, consulte Creación y administración de secuencias en la Guía para desarrolladores Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte DescribeStreamSummary
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar describe-stream.
- AWS CLI
-
Descripción de un flujo de datos
En el siguiente ejemplo de
describe-streamse devuelven los detalles del flujo de datos especificado.aws kinesis describe-stream \ --stream-namesamplestreamSalida:
{ "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 } }Para obtener más información, consulte Creación y administración de secuencias en la Guía para desarrolladores Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte DescribeStream
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar disable-enhanced-monitoring.
- AWS CLI
-
Para deshabilitar la supervisión mejorada de métricas de nivel de partición
En el siguiente ejemplo de
disable-enhanced-monitoringse deshabilita la supervisión mejorada de flujos de datos de Kinesis para métricas de nivel de partición.aws kinesis disable-enhanced-monitoring \ --stream-namesamplestream--shard-level-metricsALLSalida:
{ "StreamName": "samplestream", "CurrentShardLevelMetrics": [ "IncomingBytes", "OutgoingRecords", "IteratorAgeMilliseconds", "IncomingRecords", "ReadProvisionedThroughputExceeded", "WriteProvisionedThroughputExceeded", "OutgoingBytes" ], "DesiredShardLevelMetrics": [] }Para obtener más información, consulte Monitoring Streams in Amazon Kinesis Data Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte DisableEnhancedMonitoring
en la Referencia de la comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar enable-enhanced-monitoring.
- AWS CLI
-
Para habilitar la supervisión mejorada de métricas de nivel de partición
En el siguiente ejemplo de
enable-enhanced-monitoringse habilita la supervisión mejorada de flujos de datos de Kinesis para métricas de nivel de partición.aws kinesis enable-enhanced-monitoring \ --stream-namesamplestream\ --shard-level-metricsALLSalida:
{ "StreamName": "samplestream", "CurrentShardLevelMetrics": [], "DesiredShardLevelMetrics": [ "IncomingBytes", "OutgoingRecords", "IteratorAgeMilliseconds", "IncomingRecords", "ReadProvisionedThroughputExceeded", "WriteProvisionedThroughputExceeded", "OutgoingBytes" ] }Para obtener más información, consulte Monitoring Streams in Amazon Kinesis Data Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte EnableEnhancedMonitoring
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar get-records.
- AWS CLI
-
Obtención de registros de una partición
En el siguiente ejemplo de
get-recordsse obtienen registros de datos de la partición de un flujo de datos de Kinesis mediante el iterador de partición especificado.aws kinesis get-records \ --shard-iteratorAAAAAAAAAAF7/0mWD7IuHj1yGv/TKuNgx2ukD5xipCY4cy4gU96orWwZwcSXh3K9tAmGYeOZyLZrvzzeOFVf9iN99hUPw/w/b0YWYeehfNvnf1DYt5XpDJghLKr3DzgznkTmMymDP3R+3wRKeuEw6/kdxY2yKJH0veaiekaVc4N2VwK/GvaGP2Hh9Fg7N++q0Adg6fIDQPt4p8RpavDbk+A4sL9SWGE1Salida:
{ "Records": [], "MillisBehindLatest": 80742000 }Para obtener más información, consulte Desarrollo de consumidores mediante la API de Kinesis Data Streams con el SDK de AWS para Java en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener detalles sobre la API, consulte GetRecords
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar get-shard-iterator.
- AWS CLI
-
Para obtener un iterador de particiones
El siguiente ejemplo de
get-shard-iteratorutiliza el tipo de iterador de particionesAT_SEQUENCE_NUMBERy genera un iterador de particiones para empezar a leer los registros de datos exactamente desde la posición indicada por el número de secuencia especificado.aws kinesis get-shard-iterator \ --stream-namesamplestream\ --shard-idshardId-000000000001\ --shard-iterator-typeLATESTSalida:
{ "ShardIterator": "AAAAAAAAAAFEvJjIYI+3jw/4aqgH9FifJ+n48XWTh/IFIsbILP6o5eDueD39NXNBfpZ10WL5K6ADXk8w+5H+Qhd9cFA9k268CPXCz/kebq1TGYI7Vy+lUkA9BuN3xvATxMBGxRY3zYK05gqgvaIRn94O8SqeEqwhigwZxNWxID3Ej7YYYcxQi8Q/fIrCjGAy/n2r5Z9G864YpWDfN9upNNQAR/iiOWKs" }Para obtener más información, consulte Desarrollo de consumidores mediante la API de Kinesis Data Streams con el SDK de AWS para Java en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener detalles sobre la API, consulte GetShardIterator
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar increase-stream-retention-period.
- AWS CLI
-
Para aumentar el período de retención del flujo de datos
En el siguiente ejemplo de
increase-stream-retention-periodse aumenta el período de retención (el período de tiempo en el que se puede acceder a los registros de datos después de agregarlos al flujo) del flujo especificado a 168 horas.aws kinesis increase-stream-retention-period \ --stream-namesamplestream\ --retention-period-hours168Este comando no genera ninguna salida.
Para obtener más información, consulte Changing the Data Retention Period en la Guía para desarrolladores de Amazon Kinesis.
-
Para obtener información sobre la API, consulte IncreaseStreamRetentionPeriod
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar list-shards.
- AWS CLI
-
Para enumerar las particiones de un flujo de datos
En el siguiente ejemplo de
list-shardsse enumeran todas las particiones del flujo especificado, empezando por el fragmento cuyo identificador sigue inmediatamente alexclusive-start-shard-idespecificado deshardId-000000000000.aws kinesis list-shards \ --stream-namesamplestream\ --exclusive-start-shard-idshardId-000000000000Salida:
{ "Shards": [ { "ShardId": "shardId-000000000001", "HashKeyRange": { "StartingHashKey": "113427455640312821154458202477256070485", "EndingHashKey": "226854911280625642308916404954512140969" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871682979337187563555549332609155523708941634633746" } }, { "ShardId": "shardId-000000000002", "HashKeyRange": { "StartingHashKey": "226854911280625642308916404954512140970", "EndingHashKey": "340282366920938463463374607431768211455" }, "SequenceNumberRange": { "StartingSequenceNumber": "49600871683001637932762086172474144873796357303140614178" } } ] }Para obtener más información, consulte Listing Shards en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte ListShards
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar list-streams.
- AWS CLI
-
Creación de una lista de flujos de datos
En el siguiente ejemplo de
list-streamsse enumeran todos los flujos de datos activos de la cuenta y la región actuales.aws kinesis list-streamsSalida:
{ "StreamNames": [ "samplestream", "samplestream1" ] }Para obtener más información, consulte Visualización de secuencias en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte ListStreams
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar list-tags-for-stream.
- AWS CLI
-
Para enumerar las etiquetas de flujo de datos
En el siguiente ejemplo de
list-tags-for-streamse enumeran las etiquetas adjuntas al flujo de datos especificado.aws kinesis list-tags-for-stream \ --stream-namesamplestreamSalida:
{ "Tags": [ { "Key": "samplekey", "Value": "example" } ], "HasMoreTags": false }Para obtener más información, consulte Etiquetar sus flujos en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte ListTagsForStream
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar merge-shards.
- AWS CLI
-
Para fusionar particiones
En el siguiente ejemplo de
merge-shardsse fusionan dos particiones adyacentes con los ID shardId-000000000000 y shardId-000000000001 en el flujo de datos especificado y los combina en una sola partición.aws kinesis merge-shards \ --stream-namesamplestream\ --shard-to-mergeshardId-000000000000\ --adjacent-shard-to-mergeshardId-000000000001Este comando no genera ninguna salida.
Para obtener más información, consulte Merging Two Shards en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte MergeShards
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar put-record.
- AWS CLI
-
Escritura de un registro en un flujo de datos
En el siguiente ejemplo de
put-recordse escribe un único registro de datos en el flujo de datos especificado mediante la clave de partición especificada.aws kinesis put-record \ --stream-namesamplestream\ --datasampledatarecord\ --partition-keysamplepartitionkeySalida:
{ "ShardId": "shardId-000000000009", "SequenceNumber": "49600902273357540915989931256901506243878407835297513618", "EncryptionType": "KMS" }Para obtener más información, consulte Desarrollo de productores mediante la API de Kinesis Data Streams con el SDK de AWS para Java en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte PutRecord
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar put-records.
- AWS CLI
-
Para escribir varios registros en un flujo de datos
En el siguiente ejemplo de
put-records, se escribe un registro de datos con la clave de partición especificada y otro registro de datos con una clave de partición diferente en una sola llamada.aws kinesis put-records \ --stream-namesamplestream\ --recordsData=blob1,PartitionKey=partitionkey1Data=blob2,PartitionKey=partitionkey2Salida:
{ "FailedRecordCount": 0, "Records": [ { "SequenceNumber": "49600883331171471519674795588238531498465399900093808706", "ShardId": "shardId-000000000004" }, { "SequenceNumber": "49600902273357540915989931256902715169698037101720764562", "ShardId": "shardId-000000000009" } ], "EncryptionType": "KMS" }Para obtener más información, consulte Desarrollo de productores mediante la API de Kinesis Data Streams con el SDK de AWS para Java en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte PutRecords
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar register-stream-consumer.
- AWS CLI
-
Para registrar un consumidor de flujo de datos
En el siguiente ejemplo de
register-stream-consumerse registra un consumidor llamadoKinesisConsumerApplicationcon el flujo de datos especificado.aws kinesis register-stream-consumer \ --stream-arnarn:aws:kinesis:us-west-2:012345678912:stream/samplestream\ --consumer-nameKinesisConsumerApplicationSalida:
{ "Consumer": { "ConsumerName": "KinesisConsumerApplication", "ConsumerARN": "arn:aws:kinesis:us-west-2: 123456789012:stream/samplestream/consumer/KinesisConsumerApplication:1572383852", "ConsumerStatus": "CREATING", "ConsumerCreationTimestamp": 1572383852.0 } }Para obtener más información, consulte Desarrollo de consumidores mediante la API de Kinesis Data Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte RegisterStreamConsumer
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar remove-tags-from-stream.
- AWS CLI
-
Para eliminar etiquetas de un flujo de datos
En el siguiente ejemplo de
remove-tags-from-streamse elimina la etiqueta con la clave especificada del flujo de datos indicado.aws kinesis remove-tags-from-stream \ --stream-namesamplestream\ --tag-keyssamplekeyEste comando no genera ninguna salida.
Para obtener más información, consulte Etiquetar sus flujos en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte RemoveTagsFromStream
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar split-shard.
- AWS CLI
-
Para dividir particiones
En el siguiente ejemplo de
split-shardse divide la partición especificada en dos nuevas particiones mediante una nueva clave hash inicial de 10.aws kinesis split-shard \ --stream-namesamplestream\ --shard-to-splitshardId-000000000000\ --new-starting-hash-key10Este comando no genera ninguna salida.
Para obtener más información, consulte Splitting a Shard en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte SplitShard
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar start-stream-encryption.
- AWS CLI
-
Para habilitar el cifrado de flujos de datos
El siguiente ejemplo de
start-stream-encryptionhabilita el cifrado del servidor para el flujo especificado mediante la clave de KMS de AWS indicada.aws kinesis start-stream-encryption \ --encryption-typeKMS\ --key-idarn:aws:kms:us-west-2:012345678912:key/a3c4a7cd-728b-45dd-b334-4d3eb496e452\ --stream-namesamplestreamEste comando no genera ninguna salida.
Para obtener más información, consulte Data Protection in Amazon Kinesis Data Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte StartStreamEncryption
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar stop-stream-encryption.
- AWS CLI
-
Para deshabilitar el cifrado de flujos de datos
El siguiente ejemplo de
stop-stream-encryptiondeshabilita el cifrado del servidor para el flujo especificado mediante la clave de KMS de AWS indicada.aws kinesis start-stream-encryption \ --encryption-typeKMS\ --key-idarn:aws:kms:us-west-2:012345678912:key/a3c4a7cd-728b-45dd-b334-4d3eb496e452\ --stream-namesamplestreamEste comando no genera ninguna salida.
Para obtener más información, consulte Data Protection in Amazon Kinesis Data Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte StopStreamEncryption
en la Referencia de comandos de la AWS CLI.
-
En el siguiente ejemplo de código, se muestra cómo utilizar update-shard-count.
- AWS CLI
-
Para actualizar el recuento de particiones en un flujo de datos
En el siguiente ejemplo de
update-shard-countse actualiza el recuento de particiones del flujo de datos especificado a 6. En este ejemplo se utiliza escalado uniforme, que crea particiones del mismo tamaño.aws kinesis update-shard-count \ --stream-namesamplestream\ --scaling-typeUNIFORM_SCALING\ --target-shard-count6Salida:
{ "StreamName": "samplestream", "CurrentShardCount": 3, "TargetShardCount": 6 }Para obtener más información, consulte Resharding a Stream en la Guía para desarrolladores de Amazon Kinesis Data Streams.
-
Para obtener información sobre la API, consulte UpdateShardCount
en la Referencia de comandos de la AWS CLI.
-