| Référence | ITL-KAFK-F |
|---|---|
| Durée | 3 jour(s) |
Pour une session intra ou sur mesure
Demander un devis
Kafka est une plateforme de streaming distribuée permettant une gestion performante des flux de données en temps réel, une fiabilité à toute épreuve, une évolutivité facile, une intégration aisée et transparente et un modèle de publication/abonnement flexible, idéale pour les systèmes distribués et les applications orientées événements en temps réel.
Objectifs pédagogiques
Les objectifs pour un candidat ayant suivi cette formation sont :
- Identifier les principaux composants et avantages de Kafka.
- Installer et configurer Apache Kafka.
- Utiliser les APIs pour les producers et consumers.
- Mettre en œuvre et administrer Apache Kafka.
- Utiliser Kafka Connect pour l'intégration de données.
- Appliquer les principes fondamentaux de Kafka Streams.
- Assurer la sécurité et l'authentification dans Kafka.
Public concerné
Développeurs Java de tous niveaux, Architectes.
Prérequis
- Maîtriser le langage Java (POO, streams, etc.)
- Avoir une connaissance de Spring serait un plus.
Programme de la formation
Concepts et fondamentaux de Kafka
- Introduction.
- Vue ensemble de Kafka.
- Les Producers.
- Les Brokers.
- Les Consumers.
- Utilisation de Zookeeper.
- Installation et configuration.
- Les partitions et les groupes de consommation pour la scalabilité.
Architecture Kafka
- Architecture générale : vue d’ensemble.
- Les fichiers de logs de Kafka.
- Réplications et cohérence des données.
Développer avec Kafka
- Accéder à Kafka avec un programme client.
- Développer un Producer en Java.
- Utilisation des APIs REST pour produire des données.
- Développer un Consumer en Java.
- Utilisation des APIs REST pour consommer des données.
Gestion des schémas dans Kafka
- Introduction à Avro.
- Les schémas Avro.
- Utilisation du SchemaRegistry.
KAFKA CONNECT : intégrer des systèmes avec Kafka
- Les Motivations pour Kafka Connect.
- Les Concepts.
- Les modes de déploiements (standalone/distributed).
- Configuration en mode distribué.
- Gestion des Offsets.
- Configuration d'un connecteur.
Kafka Streams
- Cas d’usages et principes de base.
- Exemple d’utilisation de l’API Streams.
- Configuration et test d’une application Kafka Streams.
- Mise en place d'une programmatique de topologie.
- DSL comparaison avec processor API.
- Sources et destinations Kafka.
- Transformation stateless.
- Transformations stateful : agrégations, jointures, fenêtrage.
- Requêtes interactives.
- Kafka Streams et Tables.
- Message Kafka et Formats de données.
- Manipulation et agrégation de données.
- Fonctions définies par l'utilisateur (UDF).
- Enrichissement des données et jointures.
Mise en place de la sécurité
- Comprendre les enjeux et les principes de sécurité d’un système Kafka.
- Utiliser le protocole SSL/TLS pour le cryptage et l’authentification.
- Utiliser la couche SASL pour l’authentification.
- Utiliser des listes de contrôle ACL pour les autorisations.
Administration
- Réplication de données.
- Récupération en cas d’échec.
- Fichiers de journalisation et gestion des offsets.
- Gestion de la configuration.
- Surveillance.
- Rétention et compactage des journaux.
- Mise en service et gestion des Brokers.
Moyens pédagogiques
Ateliers pratiques.