Contenido del curso

Extracción de información

Transformación de Información

MSK vs Kinesis: cuál elegir en AWS

Resumen

AWS MSK ofrece Apache Kafka administrado en la nube con enfoque en Big Data. Explica cuándo conviene elegirlo frente a Kinesis Data Streams y cómo se despliega un clúster multizona con brokers y ZooKeeper para lograr alta disponibilidad y orquestación de datos. Conoce sus piezas, sus ventajas y su alcance operativo.

¿Qué es AWS MSK y por qué importa en Big Data?

AWS MSK es Apache Kafka administrado en AWS, presentado en re:Invent 2018 en Las Vegas. Su objetivo es claro: migrar Kafka on‑premise a la nube de forma transparente, manteniendo compatibilidad con el ecosistema de terceros y con el mundo open source.

  • Es Kafka administrado en AWS, con enfoque en clientes que ya usan Kafka on‑premise.
  • Entrega flexibilidad para integrarse con herramientas externas.
  • En el momento descrito, funciona con Apache Kafka 1.1.1.

La clave es su promesa: mantener la experiencia Kafka mientras se delega la infraestructura a AWS, sin perder la capacidad de integración externa.

¿Cuándo usar MSK vs Kinesis Data Streams?

La decisión se divide por integración y operación. Kinesis Data Streams es más administrado, coordinado y sincronizado con otros servicios de AWS. MSK, en cambio, ofrece mayor flexibilidad y mejor encaje con soluciones open source y de terceros, a cambio de más carga de administración.

  • Elige Kinesis cuando necesitas integración nativa y fuerte con servicios de AWS.
  • Elige MSK cuando necesitas integración con sistemas de terceros y open source.
  • Kinesis: producto más administrado y coherente con el ecosistema AWS.
  • MSK: mayor flexibilidad, pero implica operar un clúster.

En resumen operativo: con MSK administras componentes de Kafka en AWS; con Kinesis delegas más y te alineas con servicios de la plataforma.

¿Cómo se despliega la arquitectura de MSK?

MSK se despliega como un clúster de Kafka. Al crearlo, defines cuántos broker nodes usar y en qué zonas de disponibilidad ubicarlos, con la recomendación de ser multizona para alta disponibilidad. La arquitectura incorpora ZooKeeper para coordinación.

¿Qué componentes conforman el clúster?

  • Broker nodes: procesan y almacenan los datos de Kafka. Se distribuyen en múltiples zonas y subredes.
  • ZooKeeper: gestiona configuración, nombres, sincronización y rotación, además de la integración con otros servicios.
  • Por defecto, siempre habrá al menos un nodo de ZooKeeper al crear MSK.

¿Cómo fluye la información en MSK?

  • Un producer envía datos hacia el clúster de Apache Kafka.
  • El clúster orquesta y procesa la data a través de los brokers.
  • Uno o varios consumers reciben los datos procesados.

El patrón es familiar si vienes de Kinesis Data Streams: un producer, el cluster y un consumer. Cambia el servicio, pero se mantienen los roles de producción, procesamiento y consumo.

¿Qué implica el despliegue multizona?

  • Alta disponibilidad: si falla una zona, el clúster sigue activo en otras.
  • Replicación: el diseño busca resiliencia al distribuir nodos entre zonas.
  • Ubicación explícita: decides en qué zonas y subredes residirán los brokers.

En conjunto, MSK entrega Kafka con infraestructura administrada por AWS, manteniendo los conceptos nativos de Kafka: producer, consumer, brokers y ZooKeeper, más la capacidad de integrarse con open source y terceros cuando esa flexibilidad es prioritaria.

¿Tienes un caso donde dudes entre Kinesis y MSK? Cuéntalo en los comentarios y hablemos de la mejor ruta de integración y operación.