ConfluentKAFKADEV

Confluent Developer Skills for Apache Kafka®

3 jour(s) / 21h

Présentation du cours

Au cours de cette formation pratique de trois jours pour les développeurs Apache Kafka, vous apprendrez à créer une application capable de publier des données sur un cluster Kafka et d’y souscrire des données.

Vous apprendrez le rôle de Kafka dans le pipeline de distribution de données moderne, discuterez des concepts et composants architecturaux de base de Kafka et passerez en revue les API de développement Kafka.

Le cours couvre également d’autres composants de la plate-forme Confluent plus large, tels que Kafka Connect et Kafka Streams.

Objectifs pédagogiques

  • Écrire aux producteurs et aux consommateurs pour envoyer et lire des données à Kafka
  • Intégrer Kafka à des systèmes externes à l’aide de Kafka Connect
  • Écrire des applications de streaming avec Kafka Streams & ksqlDB
  • Intégrer une application cliente Kafka avec Confluent Cloud

Public cible

Ce cours est conçu pour les développeurs d’applications, les développeurs ETL (extraction, transformation et chargement) et les data scientists qui ont besoin d’interagir avec les clusters Kafka en tant que source ou destination de données.

Prérequis

Les participants doivent être familiarisés avec le développement d’applications professionnelles en Java (de préférence), C# ou Python.

De plus, une connaissance pratique de l’architecture Apache Kafka est requise pour ce cours, soit par :

Pour évaluer vos connaissances Kafka pour ce cours, veuillez remplir l’auto-évaluation sur : https://cnfl.io/fundamentals-quiz

Programme

Module 1 : Fondamentaux d’Apache Kafka®

  • Expliquez la valeur d’une plate-forme de diffusion d’événements distribués
  • Expliquez comment l’abstraction de « journal » permet une plate-forme de diffusion d’événements distribuée
  • Expliquer les concepts de base de : Brokers, Topics, Partitions et Segments, Records (également appelés messages, événements), politiques de rétention, producteurs, consommateurs et sérialisation, réplication, Kafka Connect

Module 2 : Produire des messages pour Kafka

  • Esquissez l’architecture de haut niveau d’un producteur Kafka
  • Illustrer le partitionnement basé sur les clés
  • Expliquez la différence entre acks=0, acks=1 et acks=all
  • Configurer delivery.timeout.ms pour contrôler le comportement des nouvelles tentatives
  • Créer un fichier producer.properties personnalisé
  • Ajustez le débit et la latence à l’aide du traitement par lots
  • Créer un producteur avec Confluent REST Proxy

Module 3 : Consommer des messages de Kafka

  • Illustrer comment les groupes de consommateurs et les partitions offrent une évolutivité et une tolérance aux pannes
  • Accordez les consommateurs pour éviter les rééquilibrages excessifs
  • Expliquer la différence entre les stratégies d’attribution de partition « range » et « round robin »
  • Créer un fichier consumer.properties personnalisé
  • Utiliser l’API Consumer pour gérer les offsets
  • Ajuster les requêtes fetch
  • Créer un consommateur avec Confluent REST Proxy

Module 4 : Gestion des schémas dans Apache Kafka®

  • Décrire les schémas Kafka et leur fonctionnement
  • Utilisez le Confluent Schema Registry pour guider l’évolution du schéma
  • Écrire et lire des messages à l’aide de Kafka compatible avec les schémas

Module 5 : Traitement de flux avec Kafka Streams

  • Comparer KStreams à KTables
  • Créer un fichier streams.properties personnalisé
  • Expliquer ce qu’est le co-partitionnement et pourquoi il est important
  • Ecrire une application utilisant le Streams DSL (Domain-SpecificLanguage)

Module 6 : Pipelines de données avec Kafka Connect

  • Expliquer la motivation de Kafka Connect
  • Liste des connecteurs couramment utilisés
  • Expliquer les différences entre le mode autonome et le mode distribué
  • Configurer et utiliser Kafka Connect

Module 7 : Applications de streaming d’événements avec ksqlDB

  • Utiliser ksqlDB pour filtrer et transformer un flux
  • Ecrire une requête ksqlDB qui joint deux flux ou un flux et une table
  • Écrire une requête ksqlDB qui agrège les valeurs par clé et fenêtre de temps
  • Rédiger des requêtes Push et Pull et expliquer les différences entre elles
  • Créer un connecteur avec ksqlDB

Module 8 : Décisions de conception

  • Répertorier les moyens d’éviter les messages volumineux
  • Décider quand utiliser ksqlDB vs Kafka Streams vs Kafka Connect SMT
  • Expliquer les différences et les compromis entre les garanties de traitement
  • Traiter les décisions qui découlent du partitionnement basé sur les clés
  • Authentifier une application cliente avec un cluster Kafka sécurisé

Module 9 : Confluent Cloud

  • Expliquer ce que signifie « fully-managed » dans le contexte de Confluent Cloud
  • Authentifier un client Kafka sur Confluent Cloud
  • Effectuer des opérations de base avec la CLI ccloud

Nos sessions de formations

Lieu de formation :
Dates
04/04/23 Distanciel S'inscrire
06/06/23 Distanciel S'inscrire
22/08/23 Distanciel S'inscrire
05/12/23 Distanciel S'inscrire
15/02/23 Distanciel S'inscrire
10/03/23 Distanciel S'inscrire

Ce cours vous intéresse ?

Lieu de formation :
Dates
15/02/23 Distanciel S'inscrire
10/03/23 Distanciel S'inscrire
04/04/23 Distanciel S'inscrire
06/06/23 Distanciel S'inscrire
22/08/23 Distanciel S'inscrire
05/12/23 Distanciel S'inscrire
1
Inter : 2100 € HT / participant

Aide au financement

Organiser une session dédiée
à votre organisation
Votre société à besoin d'une offre
personnalisée ? Contactez-nous