Aprende qué es Apache Kafka desde Cero

Autor: | Última modificación: 17 de abril de 2024 | Tiempo de Lectura: 3 minutos
Temas en este post:

Algunos de nuestros reconocimientos:

Premios KeepCoding

¿Sabes qué es Apache Kafka y cómo funciona? ¿Necesitas un curso de apache kafka? En principio, fue creado por el gigante del empleo LinkedIn, con la intención de leer los mensajes que llegaban, pudiendo ser billones de mensajes por día.

Hoy en día, su objetivo es algo diferente, pero su popularidad ha ido in crescendo. Así que, en este artículo, ¡te enseñamos qué es Apache Kafka y todo lo que debes saber!

¿Qué es Apache Kafka?

Podemos definir qué es Apache Kafka como un sistema de mensajería “publish/subscribe” basado en una arquitectura P2P. Creada inicialmente por LinkedIn, fue posteriormente donada a la Apache Software Foundation, por lo cual pasó a ser de código abierto u open source. Actualmente es fundamental a la hora de  procesar millones de datos.

Esta plataforma ha empezado a ganar renombre gracias a que grandes empresas como Netflix y Microsoft la usan en sus arquitecturas. Apache Kafka está escrito en Java y Scala, por lo que para controlar Apache Kafka lenguajes como estos son imprescindibles y deberías tener, al menos, nociones básicas.

 

que es apache kafka

 

Para aprender visualmente cómo es kafka, puedes ver al final el webinar de introducción a Apache Kafka junto a Andrés Gómez Ferrer, donde aprenderás a usar y qué es Apache Kafka desde cero. Además, aquí te dejaremos los conceptos básicos que necesitas para entender su funcionamiento y un caso práctico para que empieces a picar algo de código en esta herramienta.

Primeros pasos para Apache Kafka

Antes de empezar, debes conocer Zookeeper (necesario para levantar Kafka). Este es un servicio distribuido que sirve para almacenar configuraciones distribuidas y gestiones multiservicio. Internamente funciona como un árbol de directorio, cada elemento de la estructura es conocido como Znode, los cuales pueden almacenar información en su interior, por ejemplo, un JSON String.

Ya sabes qué es Apache Kafka, pero ¿cómo funciona? En la estructura de Apache Kafka hay dos partes importantes, llamadas productores y consumidores. Dependiendo de la configuración de cada proyecto, Kafka puede funcionar bajo dos tipos de sistemas de mensajes.

El primero es un Modelo de Cola, en el cual el productor distribuye los mensajes de manera equitativa a todos los consumidores, y la otra manera es llamada publicador/suscriptor en el que los consumidores se suscriben a un topic y, de esta manera, un mismo mensaje puede llegar a varios consumidores.

De las estructuras propias de kafka, el servicio principal de esta herramienta es Kafka Broker, donde se crean las colas de mensajes o también llamadas topics. Los topics se pueden dividir en particiones para que, de esta forma, se puedan fraccionar en diferentes clústeres y, así, facilitar su procesamiento. Dentro de las particiones se almacenan los mensajes que tienen un identificador único llamado offset.

Otra parte importante dentro de Kafka son las réplicas, que funcionan para garantizar la continuidad de los servicios, ya que si algún broker llega a fallar, tendrá un respaldo y un procedimiento que Kafka puede utilizar para seguir funcionando. Las réplicas se asignan a cada topic y el número máximo de estas debe ser igual o menor a la cantidad de brokers asignados.

La parte más importante o estructuras propias de kafka son los mensajes, los cuales están compuestos por cuatro partes: header, timestamp, clave y un valor. La clave se suele utilizar para decidir a qué partición va cada mensaje.

¿Cómo crear un topic?

Lo más importante en las líneas de código de este proceso es incluir el número de particiones, el número de réplicas y, de manera opcional, las configuraciones del topic. El código debe verse así:

kafka-topics.sh --zookeper localhost:2181 --create --topic topicTest --partitions 4 --replication-factor 2 -config x=y

¿Cómo conseguir Kafka?

Ahora que sabes qué es Apache Kafka, te interesará saber que, al ser una herramienta open source, su descarga es muy fácil y, para conseguirlo, puedes ir a esta página. ¿Necesitas un curso de apache kafka? Ahora que ya lo tienes instalado en tu ordenador, aquí te dejamos un ejercicio práctico de un curso Kafka gratis para que entiendas su funcionamiento y lo empieces a usar. ¡No te pierdas el Kafka tutorial!

En Big Data, podrás encontrar miles de retos y beneficios que solo esta industria te puede ofrecer. Convertirte en un experto en esta especialidad es posible en tan solo ocho meses y mucho esfuerzo de tu parte. Podrás aprender Kafka, programación ¡y mucho más! Descubre el Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp y conoce cómo lograrás esta meta con nosotros.

¡CONVOCATORIA ABIERTA!

Big Data, IA & Machine Learning

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado