StreamThoughts

Apache Kafka pour Développeurs : Développer des applications Event-driven avec Apache Kafka

Price : 1850€ H.T. - per attendee

For more information about this training course, please free to contact :
training@streamthoughts.io

Description

Ce cours de 3 jours apprend aux participants à utiliser la plateforme Apache Kafka pour développer des applications orientées événements à travers : Kafka Core, Kafka Connect et Kafka Streams. Il traite aussi les meilleures pratiques de développement.

Course Objectives

Vous apprendrez à utiliser les usages de la solution Apache Kafka, les concepts clés de son architecture. Vous utiliserez les API Clients pour produire et consommer des données et Kafka Streams. Vous apprendrez à utiliser Kafka Connect pour intégrer des données entre Kafka et d'autres systèmes.

Pedagogy

50% théorie, 50% pratique

Who Should Attend ?

Cet atelier est destiné aux Développeurs, aux Architectes et aux Data Ingénieurs qui ont besoin de créer des pipelines d'intégration de données, en temps réel, à travers Apache Kafka.

Course Duration

3 Days

Course Prerequisites

Les participants doivent être familiarisés avec le développement en Java. Aucune connaissance préalable de Apache Kafka n’est nécessaire

Course Content

1 ) Introduction

Event Streaming, Les Motivations ?
Qu’est-ce qu’ Apache Kafka ?
Le projet Apache Kafka
Les principaux avantages de Kafka
Quel sont les usages ?
Les solutions alternatives
La plate-forme Confluent

2 ) Kafka, Les Fondamentaux

Broker, Message, Topic & Partitions
Principes de bases des Producers
Consumers & Consumer Groups
Réplication et tolérance à la panne
Rétention et compression des données
Comprendre les rôles de zookeeper
Comprendre les performances de Kafka

3 ) Architecture Kafka

La couche de stockage de Kafka
La réplication des données
Acknowledgment des messages
Consumer Groups et assignations des partitions
Garantie de l’ordre des messages

4 ) L’API Producer

Les bases de l’API Java, Producer
La sérialisation des messages
Comprendre le “write-path”
Contrôle de la diffusion des messages
Débit et latence

5 ) L’API Consumer

Les bases de l’API Java, Consumer
Contrôler la position des consumers
Gestion des Offsets
Consumers Multi-thread
Comprendre le lag des consumers
Débit et latence

6 ) Consumer : Développement avancé

Comprendre le cycle de vie des Consumers
Implémenter un Partition Assignor
Découpler consommation et traitement
Utilisation des Consumer Interceptors
Synchroniser des partitions colocalisées.
Traitement des erreurs de consommation

7 ) Producer : Développement avancé

Comprendre les transactions Kafka.
Implémenter un partitionneur personnalisé
Utilisation des Interceptors

8 ) Gestion des schémas

La sérialisation des données
Introduction à Avro
Gérer l’évolution des schémas
Comprendre le rôle d’un Schema Registry

9 ) Développement plus avancé

Utiliser l’API AdminClient
Tester des Producers
Tester des Consumers
Introduction à TestContainer pour Apache Kafka

10 ) Intégration de données avec Kafka Connect

Introduction à Kafka Connect
Architecture de Kafka Connect
Les Converters
Single Message Transforms (SMTs)
Les modes de déploiements
Configuration des connecteurs
L’API REST

11 ) Traitement de données avec Kafka Streams

Introduction à Kafka Streams
Les concepts: Streams et Tables
Les bases de l’API Processor et du Streams DSL
Les agrégations fenêtrées et les jointures
Introduction à ksqlDB

12 ) Administration de base de Kafka

Installer et configurer des brokers
Gestion de la configuration des topics
Les solutions de Monitoring
The Author's Avatar
Instructor

Florian travaille depuis plus de 8 ans dans le conseil, il est co-fondateur et CEO de StreamThoughts. Passionné par les systèmes distribués, il se spécialise dans les technologies d’event-streaming comme Apache Kafka, Apache Pulsar. Aujourd’hui, il accompagne les entreprises dans leur transition vers les architectures orientées streaming d’événements. Florian est certifié Confluent Administrator & Developer pour Apache Kafka. Il est nommé deux années consécutive (2019 et 2020) “Confluent Community Catalyst” pour ses contributions sur le projet Apache Kafka Streams et son implication dans la communauté open-source. Il fait partie des organisateurs du Paris Apache Kafka Meetup.