Aprende a crear y configurar un Kinesis Data Stream desde la consola de AWS con criterios claros para dimensionar shards, activar encripción con KMS, ajustar retención y habilitar métricas y logs en CloudWatch. Además, conecta con Kinesis Firehose y Kinesis Analytics, y mejora el consumo con enhanced fan-out.
¿Cómo crear y configurar un Kinesis Data Stream en AWS?
Para iniciar, busca Kinesis en la consola de AWS. Verás dos servicios: Kinesis y Kinesis Video Stream. Entra a Kinesis, selecciona Get Started y elige entre cuatro opciones: Data Stream, Delivery Stream, Analytics o Video Stream. Para el procesamiento de datos en tiempo real, selecciona Create Data Stream y asigna un nombre (por ejemplo, “Platzi Kinesis”).
¿Qué opciones muestra Kinesis al iniciar?
- Data Stream: ingesta y procesamiento de datos en tiempo real.
- Delivery Stream: entrega a destinos mediante Kinesis Firehose.
- Analytics: analítica sobre datos en streaming.
- Video Stream: procesamiento de video en tiempo real.
¿Qué parámetros iniciales se definen?
- Nombre del stream y cantidad de shards.
- Estimación de tráfico para dimensionar capacidad de escritura y lectura.
- Opciones de envío de datos: API con put operation o Kinesis Producer Library en los productores.
¿Qué considerar al elegir shards y throughput?
La decisión de shards depende del volumen de tráfico, el tamaño del record, la tasa de records por segundo y el número de aplicaciones consumidoras. Dedica tiempo a esta estimación: impacta rendimiento y costos.
¿Qué capacidad ofrece un ejemplo con 5 shards?
- Escritura: 5 MB/s (aprox. 5,000 records/s).
- Lectura: 10 MB/s en total.
- Úsalo como referencia para validar tu carga y patrones de consumo.
¿Cómo ayuda el estimador de shards?
-
Ingresas tamaño del record y records por segundo.
-
Indicas cuántas aplicaciones van a consumir.
-
Recibes una recomendación de shards para configurar tu stream.
-
Habilidades clave: dimensionar shards, interpretar throughput de lectura/escritura, estimar records/s.
-
Datos prácticos: más retención y más logs incrementan costo.
¿Cómo proteger, retener y monitorear el stream?
En la pestaña Details verás el stream ARN, el estatus, la cantidad de shards y opciones de envío de datos. También podrás integrar con Kinesis Firehose o Kinesis Analytics para extender ingestión y análisis.
¿Cómo habilitar encripción con KMS?
- Activa server-side encryption desde el panel derecho.
- Usa KMS (Key Management System) para cifrar los datos en tránsito por el stream.
- Beneficio: agrega una capa de seguridad con llaves administradas.
¿Cómo ajustar la retención y su costo?
- Cambia el periodo de retención entre 24 y 168 horas.
- Considera que aumentar retención incrementa el costo del servicio.
- Evalúa necesidades de reprocesamiento antes de ampliar ventanas.
¿Cómo ver métricas y logs en CloudWatch?
-
Integra con CloudWatch para métricas y logs.
-
Habilita CloudWatch Logs para monitorear y hacer debugging del comportamiento de la data.
-
En la pestaña Monitoring, usa dashboards predefinidos con métricas como records y bytes.
-
Organización y consumo: usa tags (p. ej., environment: production o staging) para filtrar recursos por ambiente.
-
Alto rendimiento de consumo: habilita enhanced fan-out para asignar a consumers una transferencia dedicada de hasta 2 MB/s por consumidor.
-
Costo visible: al habilitar logs, considera el cobro de CloudWatch Logs por almacenamiento.
¿Tienes una carga específica o dudas sobre shards, KMS o CloudWatch? Cuéntame en los comentarios y afinamos tu configuración.