Descripción
El curso trata de proporcionar los conceptos y habilidades necesarias para que los alumnos puedan desarrollar aplicaciones con Kafka utilizando la API de Scala.
El alumno conocerá como realizar tareas como lanzar crear y mantener topics, lanzar y consumir mensajes o crear grupos de consumidores. En el curso se introduce al alumno a trabajar con el servidor de mensajería Kafka y llevar a cabo un desarrollo en torno al mismo.
Objetivos
Este curso está dirigido principalmente a desarrolladores, sobre todo para aquellos que tengan conocimientos y experiencia con sistemas de mensajería como JMS o IBM MQ Series, o que deseen conocer como crear aplicaciones streaming.
Contenidos del curso
1. Introducción
- Introducción
- Conceptos básicos de Kafka
- Kafka vs otros sistemas de mensajería y motivación
- Complejidad de los sistemas
- Procesamiento en tiempo real
- Plataforma de streaming de datos
2. Diseño y arquitectura de Kafka
- Como almacena Kafka los datos en disco
- Logs, índices y checkpoints
- Gestión de Offset
- Componentes de Kafka
- Producers
- Brokers
- Roles de los brokers: leaders, followers
- Consumers
3. Integración de Kafka
- Uso de Zookeeper por parte de Kafka
- Protocolo de comunicaciones de Kafka
- Integración con Kafka connect
- Motivación
- Tipos de conectores
- Implementación de Kafka connect
- Multi-cluster Kafka
- Mirror maker
- Kafka connect
- Diferencias entre las principales versiones
- Migraciones e incompatibilidades
- AVRO, Schema Management en Kafka
4. Desarrollo de producers
- Arquitectura y elementos de un producer
- API para desarrollar producers
- Cómo funciona un producer
- Particiones y réplicas
- Desarrollo de un producer normal y asíncrono
- Particionadores: qué son y para qué sirven
- Desarrollo de un particionador personalizado
- Serializadores: qué són y para qué sirven
- Desarrollo de un serializador personalizado.
- Construir y enviar mensajes: optimización
- Entrega de mensajes: at least once, at most once…
- Kafka con Kerberos
- Agregar el plugin de Kafka en Ranger
5. Desarrollo de consumers
- Arquitectura y elementos del consumer
- Estructura básica de un consumer
- API para desarrollar consumers
- Grupo de consumers: escalabilidad
- Offsets & commits
- Rebalanceo de listeners
- Subscription & polling
- Integración de Kafka con Spark 2
- Spark 2 como consumer de un Topic Kafka
- Utilizando Spark Structured Streaming con Kafka
- Diferentes tipos de lecturas de un topic
6. Testing con Kafka
- Crear un plan de carga para Kafka
- Definir los elementos del plan
- Lanzar y monitorizar el Plan de carga
- Optimizaciones que se pueden realizar
Información general
Cursos de Desarrollo y Lenguajes en Big Data
Big Data
Presencial | Learning virtual class
Sin certificación