CaracterÃsticas de Kinesis Data Streams:
- Recopila y procesa grandes cantidades de stream de datos en tiempo real. Deben ser gigantescas cantidades de datos (TB, HB, con miles o millones de fuentes de información que alimentan el servicio).
- Casos de uso: Procesamiento de logs, social media, market data feeds y web clickstream.
- Kinesis Data Streams nos permite hacer agregaciones en el proceso de información; es decir, podemos juntar información, agruparla y hacer ciertas actividades con dicha información mientras es procesada.
Asà está compuesto Kinesis Data Streams:
- Data Record: Es la unidad de dato almacenada en Kinesis Data Streams.
- Retention period: El tiempo en que la información se mantiene accesible después de ser agregada al stream. Es muy importante tener en cuenta que Kinesis Data Streams no es un servicio para almacenar información, pero podemos contar con un periodo de retención, que por defecto es de 24 horas.
- Producer: Es el encargado de poner el Data Record en Kinesis Data Streams.
- Consumer: Toma los Data Records ya procesados de Kinesis Data Streams para alimentar otro sistema de información.
- Shard: Es una secuencia de Data Records dentro de un stream. En la configuración de Kinesis, debemos especificar la cantidad de shards, y la cantidad de shard estará determinada principalmente por la cantidad del flujo de información que tengamos.
- Partition key: Se usa para agrupar la información por shard dentro de un stream.
Es asà que Kinesis Data Streams se convierte en una parte fundamental de arquitecturas en tiempo real, arquitecturas en las cuales la necesidad principal es procesar millones de datos; se puede crecer N cantidad de shards y procesar de acuerdo a lo que permitan los shards en tamaño.
Kinesis Data Stream nos brinda alta disponibilidad, redundancia y un performance muy alto para manejar grandes cantidades de datos en tiempo real.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?