Paso 7: Conclusión - Amazon Kinesis Data Streams

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.

Paso 7: Conclusión

Como paga por utilizar el flujo de datos de Kinesis, asegúrese de eliminarla, así como la tabla de Amazon DynamoDB correspondiente, cuando haya terminado con ella. Se aplican cargos nominales sobre una secuencia activa incluso aunque no esté enviando ni recibiendo registros. Esto se debe a que una secuencia activa está utilizando los recursos "escuchando" de forma continua los registros entrantes y las solicitudes para obtener registros.

Para eliminar la secuencia y la tabla
  1. Cierre los productores y los consumidores que puedan estar ejecutándose aún.

  2. Abra la consola de Kinesis en https://console.aws.amazon.com/kinesis.

  3. Seleccione la secuencia que haya creado para esta aplicación (StockTradeStream).

  4. Elija Delete Stream (Eliminar secuencia).

  5. Abra la consola de DynamoDB en https://console.aws.amazon.com/dynamodb/.

  6. Elimine la tabla StockTradesProcessor.

Resumen

El procesamiento de una gran cantidad de datos casi en tiempo real no requiere escribir ningún código mágico ni desarrollar una infraestructura enorme. Es tan sencillo como escribir lógica para procesar una pequeña cantidad de datos (como escribir processRecord(Record)), pero con Kinesis Data Streams para escalarla de forma que funcione con una gran cantidad de datos transmitidos. No tiene que preocuparse de cómo escalar su procesamiento, ya que Kinesis Data Streams lo administra por usted. Lo único que tiene que hacer es enviar sus registros de streaming a Kinesis Data Streams y escribir la lógica para procesar cada nuevo registro recibido.

A continuación se muestran algunas posibles mejoras para esta aplicación.

Agregación en todos los fragmentos

En la actualidad, obtiene estadísticas derivadas de agrupar los registros de datos que se reciben de un único proceso de trabajo desde un único fragmento. (Un fragmento no puede ser procesado por más de un proceso de trabajo en una sola aplicación al mismo tiempo). Lógicamente, si escala y tiene más de un fragmento, es posible que quiera realizar la agregación en todos los fragmentos. Podrá hacerlo con una arquitectura de canalización en la que el resultado de cada proceso de trabajo se envíe a otra secuencia con un único fragmento, que se procesará por parte de un proceso de trabajo que agregue los resultados de la primera etapa. Dado que los datos de la primera etapa están limitados (a una muestra por minuto y fragmento), pueden ser administrados fácilmente por un fragmento.

Procesamiento de la escala

Cuando la secuencia se escala para tener muchos fragmentos (porque hay muchos productores enviando datos), el método para aumentar el procesamiento es agregar más procesos de trabajo. Puede ejecutar los procesos de trabajo en instancias de Amazon EC2 y utilizar grupos de escalado automático.

Use conectores para Amazon S3/DynamoDB/Amazon Redshift/Storm

A medida que un flujo se procesa continuamente, su salida puede enviarse a otros destinos. AWS proporciona conectores para integrar Kinesis Data Streams con otros servicios de AWS y herramientas de terceros.