Ejemplos de Kinesis que utilizan AWS CLI - AWS Command Line Interface

Esta documentación es AWS CLI únicamente para la versión 1 de la versión. Para ver la documentación relacionada con la versión 2 de AWS CLI, consulte la Guía del usuario de la versión 2.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Ejemplos de Kinesis que utilizan AWS CLI

Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes mediante el AWS Command Line Interface uso de 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 funciones de servicio individuales, es posible ver las acciones en contexto en los escenarios relacionados.

Cada ejemplo incluye un enlace al código fuente completo, donde puede encontrar instrucciones sobre cómo configurar y ejecutar el código en su contexto.

Acciones

El siguiente ejemplo de código muestra cómo usarloadd-tags-to-stream.

AWS CLI

Para añadir etiquetas a un flujo de datos

El siguiente add-tags-to-stream ejemplo asigna una etiqueta con la clave samplekey y el valor example al flujo especificado.

aws kinesis add-tags-to-stream \ --stream-name samplestream \ --tags samplekey=example

Este comando no genera ninguna salida.

Para obtener más información, consulte Cómo etiquetar sus transmisiones en la Guía para desarrolladores de Amazon Kinesis Data Streams.

  • Para API obtener más información, consulte la Referencia AddTagsToStreamde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocreate-stream.

AWS CLI

Creación de un flujo de datos

En el siguiente ejemplo de create-stream se crea un flujo de datos denominado samplestream con 3 particiones.

aws kinesis create-stream \ --stream-name samplestream \ --shard-count 3

Este 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 API obtener más información, consulte CreateStreamla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodecrease-stream-retention-period.

AWS CLI

Para reducir el período de retención del flujo de datos

El siguiente decrease-stream-retention-period ejemplo reduce el período de retención (el tiempo durante el cual se puede acceder a los registros de datos después de añadirlos a la transmisión) de una transmisión denominada samplestream a 48 horas.

aws kinesis decrease-stream-retention-period \ --stream-name samplestream \ --retention-period-hours 48

Este comando no genera ninguna salida.

Para obtener más información, consulte Cambiar el período de retención de datos en la Guía para desarrolladores de Amazon Kinesis Data Streams.

El siguiente ejemplo de código muestra cómo usarlodelete-stream.

AWS CLI

Eliminación de un flujo de datos

En el siguiente ejemplo de delete-stream se elimina el flujo de datos especificado.

aws kinesis delete-stream \ --stream-name samplestream

Este 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 API obtener más información, consulte DeleteStreamla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloderegister-stream-consumer.

AWS CLI

Para anular el registro de un consumidor de flujo de datos

El siguiente deregister-stream-consumer ejemplo anula el registro del consumidor especificado del flujo de datos especificado.

aws kinesis deregister-stream-consumer \ --stream-arn arn:aws:kinesis:us-west-2:123456789012:stream/samplestream \ --consumer-name KinesisConsumerApplication

Este comando no genera ninguna salida.

Para obtener más información, consulte Desarrollo de consumidores con una distribución mejorada mediante Kinesis Data API Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.

El siguiente ejemplo de código muestra cómo usarlodescribe-limits.

AWS CLI

Para describir los límites de los fragmentos

En el siguiente describe-limits ejemplo, se muestran los límites y el uso de los fragmentos de la cuenta corriente AWS .

aws kinesis describe-limits

Salida:

{ "ShardLimit": 500, "OpenShardCount": 29 }

Para obtener más información, consulte Repartición de una transmisión en la Guía para desarrolladores de Amazon Kinesis Data Streams.

  • Para API obtener más información, consulte Command DescribeLimitsReference AWS CLI .

El siguiente ejemplo de código muestra cómo usarlodescribe-stream-consumer.

AWS CLI

Para describir a un consumidor de flujos de datos

El siguiente describe-stream-consumer ejemplo devuelve la descripción del consumidor especificado, registrado en el flujo de datos especificado.

aws kinesis describe-stream-consumer \ --stream-arn arn:aws:kinesis:us-west-2:012345678912:stream/samplestream \ --consumer-name KinesisConsumerApplication

Salida:

{ "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 Lectura de datos de Amazon Kinesis Data Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.

El siguiente ejemplo de código muestra cómo usarlodescribe-stream-summary.

AWS CLI

Para describir un resumen de un flujo de datos

El siguiente describe-stream-summary ejemplo proporciona una descripción resumida (sin la lista de fragmentos) del flujo de datos especificado.

aws kinesis describe-stream-summary \ --stream-name samplestream

Salida:

{ "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.

El siguiente ejemplo de código muestra cómo usarlodescribe-stream.

AWS CLI

Descripción de un flujo de datos

En el siguiente ejemplo de describe-stream se devuelven los detalles del flujo de datos especificado.

aws kinesis describe-stream \ --stream-name samplestream

Salida:

{ "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 API obtener más información, consulte DescribeStreamla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodisable-enhanced-monitoring.

AWS CLI

Para deshabilitar la supervisión mejorada de las métricas a nivel de fragmento

El siguiente disable-enhanced-monitoring ejemplo desactiva la supervisión mejorada del flujo de datos de Kinesis para las métricas a nivel de fragmento.

aws kinesis disable-enhanced-monitoring \ --stream-name samplestream --shard-level-metrics ALL

Salida:

{ "StreamName": "samplestream", "CurrentShardLevelMetrics": [ "IncomingBytes", "OutgoingRecords", "IteratorAgeMilliseconds", "IncomingRecords", "ReadProvisionedThroughputExceeded", "WriteProvisionedThroughputExceeded", "OutgoingBytes" ], "DesiredShardLevelMetrics": [] }

Para obtener más información, consulte Supervisión de transmisiones en Amazon Kinesis Data Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.

El siguiente ejemplo de código muestra cómo usarloenable-enhanced-monitoring.

AWS CLI

Para habilitar una supervisión mejorada de las métricas a nivel de fragmento

El siguiente enable-enhanced-monitoring ejemplo permite una supervisión mejorada del flujo de datos de Kinesis para las métricas a nivel de fragmento.

aws kinesis enable-enhanced-monitoring \ --stream-name samplestream \ --shard-level-metrics ALL

Salida:

{ "StreamName": "samplestream", "CurrentShardLevelMetrics": [], "DesiredShardLevelMetrics": [ "IncomingBytes", "OutgoingRecords", "IteratorAgeMilliseconds", "IncomingRecords", "ReadProvisionedThroughputExceeded", "WriteProvisionedThroughputExceeded", "OutgoingBytes" ] }

Para obtener más información, consulte Supervisión de transmisiones en Amazon Kinesis Data Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.

El siguiente ejemplo de código muestra cómo usarloget-records.

AWS CLI

Obtención de registros de una partición

En el siguiente ejemplo de get-records se 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-iterator AAAAAAAAAAF7/0mWD7IuHj1yGv/TKuNgx2ukD5xipCY4cy4gU96orWwZwcSXh3K9tAmGYeOZyLZrvzzeOFVf9iN99hUPw/w/b0YWYeehfNvnf1DYt5XpDJghLKr3DzgznkTmMymDP3R+3wRKeuEw6/kdxY2yKJH0veaiekaVc4N2VwK/GvaGP2Hh9Fg7N++q0Adg6fIDQPt4p8RpavDbk+A4sL9SWGE1

Salida:

{ "Records": [], "MillisBehindLatest": 80742000 }

Para obtener más información, consulte Desarrollo de consumidores que utilizan Kinesis Data API Streams con AWS SDK la versión para Java en la Guía para desarrolladores de Amazon Kinesis Data Streams.

  • Para API obtener más información, consulte la Referencia GetRecordsde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-shard-iterator.

AWS CLI

Para obtener un iterador de fragmentos

El siguiente get-shard-iterator ejemplo utiliza el tipo de iterador AT_SEQUENCE_NUMBER de fragmentos y genera un iterador de fragmentos 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-name samplestream \ --shard-id shardId-000000000001 \ --shard-iterator-type LATEST

Salida:

{ "ShardIterator": "AAAAAAAAAAFEvJjIYI+3jw/4aqgH9FifJ+n48XWTh/IFIsbILP6o5eDueD39NXNBfpZ10WL5K6ADXk8w+5H+Qhd9cFA9k268CPXCz/kebq1TGYI7Vy+lUkA9BuN3xvATxMBGxRY3zYK05gqgvaIRn94O8SqeEqwhigwZxNWxID3Ej7YYYcxQi8Q/fIrCjGAy/n2r5Z9G864YpWDfN9upNNQAR/iiOWKs" }

Para obtener más información, consulte Desarrollo de consumidores que utilizan Kinesis Data API Streams con AWS SDK la versión para Java en la Guía para desarrolladores de Amazon Kinesis Data Streams.

  • Para API obtener más información, consulte la Referencia GetShardIteratorde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloincrease-stream-retention-period.

AWS CLI

Para aumentar el período de retención del flujo de datos

El siguiente increase-stream-retention-period ejemplo aumenta el período de retención (el tiempo durante el cual se puede acceder a los registros de datos después de agregarlos a la transmisión) de la transmisión especificada a 168 horas.

aws kinesis increase-stream-retention-period \ --stream-name samplestream \ --retention-period-hours 168

Este comando no genera ninguna salida.

Para obtener más información, consulte Cambiar el período de retención de datos en la Guía para desarrolladores de Amazon Kinesis Data Streams.

El siguiente ejemplo de código muestra cómo usarlolist-shards.

AWS CLI

Para enumerar los fragmentos de un flujo de datos

En el siguiente list-shards ejemplo, se enumeran todos los fragmentos de la secuencia especificada, empezando por el fragmento cuyo identificador sigue inmediatamente al especificado. exclusive-start-shard-id shardId-000000000000

aws kinesis list-shards \ --stream-name samplestream \ --exclusive-start-shard-id shardId-000000000000

Salida:

{ "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 Cómo publicar fragmentos en la Guía para desarrolladores de Amazon Kinesis Data Streams.

  • Para API obtener más información, consulte la Referencia ListShardsde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlolist-streams.

AWS CLI

Creación de una lista de flujos de datos

En el siguiente ejemplo de list-streams se enumeran todos los flujos de datos activos de la cuenta y la región actuales.

aws kinesis list-streams

Salida:

{ "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 API obtener más información, consulte ListStreamsla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlolist-tags-for-stream.

AWS CLI

Para enumerar las etiquetas de un flujo de datos

En el siguiente list-tags-for-stream ejemplo, se enumeran las etiquetas adjuntas al flujo de datos especificado.

aws kinesis list-tags-for-stream \ --stream-name samplestream

Salida:

{ "Tags": [ { "Key": "samplekey", "Value": "example" } ], "HasMoreTags": false }

Para obtener más información, consulte Cómo etiquetar sus transmisiones en la Guía para desarrolladores de Amazon Kinesis Data Streams.

  • Para API obtener más información, consulte la Referencia ListTagsForStreamde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlomerge-shards.

AWS CLI

Para fusionar fragmentos

En el siguiente merge-shards ejemplo, se combinan dos fragmentos adyacentes IDs de shardId -000000000000 y shardId -000000000001 en el flujo de datos especificado y los combina en un solo fragmento.

aws kinesis merge-shards \ --stream-name samplestream \ --shard-to-merge shardId-000000000000 \ --adjacent-shard-to-merge shardId-000000000001

Este comando no genera ninguna salida.

Para obtener más información, consulte Fusión de dos fragmentos en la Guía para desarrolladores de Amazon Kinesis Data Streams.

  • Para API obtener más información, consulte la Referencia de MergeShardscomandos AWS CLI .

El siguiente ejemplo de código muestra cómo usarloput-record.

AWS CLI

Escritura de un registro en un flujo de datos

En el siguiente ejemplo de put-record se escribe un único registro de datos en el flujo de datos especificado mediante la clave de partición especificada.

aws kinesis put-record \ --stream-name samplestream \ --data sampledatarecord \ --partition-key samplepartitionkey

Salida:

{ "ShardId": "shardId-000000000009", "SequenceNumber": "49600902273357540915989931256901506243878407835297513618", "EncryptionType": "KMS" }

Para obtener más información, consulte Desarrollo de productores que utilizan Amazon Kinesis Data API Streams con para Java en AWS SDK la Guía para desarrolladores de Amazon Kinesis Data Streams.

  • Para API obtener más información, consulte la Referencia PutRecordde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloput-records.

AWS CLI

Para escribir varios registros en un flujo de datos

El siguiente put-records ejemplo 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-name samplestream \ --records Data=blob1,PartitionKey=partitionkey1 Data=blob2,PartitionKey=partitionkey2

Salida:

{ "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 que utilizan Amazon Kinesis Data API Streams con para Java en AWS SDK la Guía para desarrolladores de Amazon Kinesis Data Streams.

  • Para API obtener más información, consulte la Referencia PutRecordsde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloregister-stream-consumer.

AWS CLI

Para registrar un consumidor de flujo de datos

El siguiente register-stream-consumer ejemplo registra a un consumidor llamado KinesisConsumerApplication con el flujo de datos especificado.

aws kinesis register-stream-consumer \ --stream-arn arn:aws:kinesis:us-west-2:012345678912:stream/samplestream \ --consumer-name KinesisConsumerApplication

Salida:

{ "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 con una distribución mejorada mediante Kinesis Data API Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.

El siguiente ejemplo de código muestra cómo usarloremove-tags-from-stream.

AWS CLI

Para eliminar etiquetas de un flujo de datos

En el siguiente remove-tags-from-stream ejemplo, se quita la etiqueta con la clave especificada del flujo de datos especificado.

aws kinesis remove-tags-from-stream \ --stream-name samplestream \ --tag-keys samplekey

Este comando no genera ninguna salida.

Para obtener más información, consulte Cómo etiquetar sus transmisiones en la Guía para desarrolladores de Amazon Kinesis Data Streams.

  • Para API obtener más información, consulte la Referencia RemoveTagsFromStreamde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlosplit-shard.

AWS CLI

Para dividir fragmentos

En el siguiente split-shard ejemplo, se divide el fragmento especificado en dos fragmentos nuevos mediante una nueva clave hash inicial de 10.

aws kinesis split-shard \ --stream-name samplestream \ --shard-to-split shardId-000000000000 \ --new-starting-hash-key 10

Este comando no genera ninguna salida.

Para obtener más información, consulte División de un fragmento en la Guía para desarrolladores de Amazon Kinesis Data Streams.

  • Para API obtener más información, consulte la Referencia de SplitShardcomandos AWS CLI .

El siguiente ejemplo de código muestra cómo usarlostart-stream-encryption.

AWS CLI

Para habilitar el cifrado del flujo de datos

El siguiente start-stream-encryption ejemplo habilita el cifrado del lado del servidor para el flujo especificado mediante la clave especificada AWS KMS.

aws kinesis start-stream-encryption \ --encryption-type KMS \ --key-id arn:aws:kms:us-west-2:012345678912:key/a3c4a7cd-728b-45dd-b334-4d3eb496e452 \ --stream-name samplestream

Este comando no genera ninguna salida.

Para obtener más información, consulte Protección de datos en Amazon Kinesis Data Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.

El siguiente ejemplo de código muestra cómo usarlostop-stream-encryption.

AWS CLI

Para deshabilitar el cifrado del flujo de datos

El siguiente stop-stream-encryption ejemplo deshabilita el cifrado del lado del servidor para la transmisión especificada mediante la clave especificada. AWS KMS

aws kinesis start-stream-encryption \ --encryption-type KMS \ --key-id arn:aws:kms:us-west-2:012345678912:key/a3c4a7cd-728b-45dd-b334-4d3eb496e452 \ --stream-name samplestream

Este comando no genera ninguna salida.

Para obtener más información, consulte Protección de datos en Amazon Kinesis Data Streams en la Guía para desarrolladores de Amazon Kinesis Data Streams.

  • Para API obtener más información, consulte la Referencia StopStreamEncryptionde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloupdate-shard-count.

AWS CLI

Para actualizar el recuento de fragmentos en un flujo de datos

En el siguiente update-shard-count ejemplo, se actualiza el recuento de fragmentos del flujo de datos especificado a 6. En este ejemplo, se utiliza una escala uniforme, que crea fragmentos del mismo tamaño.

aws kinesis update-shard-count \ --stream-name samplestream \ --scaling-type UNIFORM_SCALING \ --target-shard-count 6

Salida:

{ "StreamName": "samplestream", "CurrentShardCount": 3, "TargetShardCount": 6 }

Para obtener más información, consulte Repartición de una transmisión en la Guía para desarrolladores de Amazon Kinesis Data Streams.

  • Para API obtener más información, consulte Command UpdateShardCountReference AWS CLI .