Acceso Alumnos

Aprende qué es Apache Kafka desde Cero

Autor: | Última modificación: 19 de septiembre de 2022 | Tiempo de Lectura: 3 minutos
Temas en este post:

¿Sabes qué es Apache Kafka y cómo funciona? 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 esta plataforma, 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

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.

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 en 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. 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!

YouTube video

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. Descarga aquí el temario o si tienes preguntas, programa una llamada con nosotros.

👉 Descubre más del Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp ¡Descarga el temario!

👉 Prueba el Bootcamp Gratis por una Semana ¡Empieza ahora mismo!

👉 Conoce nuestros otros Bootcamps en Programación y Tecnología

[email protected]

¿Sabías que hay más de 5.000 vacantes para desarrolladores de Big Data sin cubrir en España? 

En KeepCoding llevamos desde 2012 guiando personas como tú a áreas de alta empleabilidad y alto potencial de crecimiento en IT con formación de máxima calidad.

 

Porque creemos que un buen trabajo es fuente de libertad, independencia, crecimiento y eso ¡cambia historias de vida!


¡Da el primer paso!