+33 (0)1 53 89 99 93 info@xebia-training.fr

Data

Formation Applications temps réel avec Kafka-Streams

Avec Loïc Divad et  Sylvain Lequeux
2 jours, soit 14 heures
La donnée, nous la voulons toujours plus vite ! Les architectures Big Data évoluent actuellement vers le Fast Data. Mécaniquement, des applications de streaming de données vont apparaître dans le SI.

Kafka est un système de messagerie distribué, originellement développé chez LinkedIn, et maintenu au sein de la fondation Apache depuis 2012. De plus en plus utilisé en entreprise, il est devenu le standard pour la gestion des données en temps réel.

Pouvant sembler simples, les applications de streaming apportent avec elles des complexités cachées. Gestion des états, prise en compte des retards ou encore idempotence sont autant de sujets que nous aborderons.

Programme

Introduction au stream processing
  • Streaming vs Batch
  • Cas d’utilisation du streaming
Rôle de Kafka dans les applications temps réels
  • Présentation de Apache Kafka
  • Les distributions de Kafka
  • Hands’on : installation de Kafka
Frameworks de développement autour de Kafka
  • Client bas niveau
  • Hands’on : communication avec les clients bas niveau
  • Kafka-Streams
  • Hands’on : construction d’une application de streaming
  • KSQL
  • Autres frameworks de stream processing
Types d’applications de systèmes temps réel
  • Event-Sourcing et CQRS
  • Complex Event Processing
Concepts avancés de Streaming
  • State-Full & State-Less transformations
  • Manipulations avancées : jointures, corrélation et enrichissement
  • Hands’on : transformations State-Full
  • Out of order and late data arrival
  • Hands’on : gestion de données désynchronisées
  • Fenêtrage
  • Hands’on : agrégations sur du streaming
  • Idempotence
Qualité de la donnée
  • Stockage et rétention
  • Evolution des schémas
  • Catalogue de données
Bonnes pratiques avec Kafka-Streams
  • Tests unitaires
  • Hands’on : écriture de tests unitaires
  • Tests d’intégration
  • Configuration avancée
Monitoring
  • Métriques
  • Logs
  • Outillage et débug
Sécurité
  • Haute Disponibilité
  • Contrôle d’accès

Objectif

A l’issue de cette formation, les participants sauront :

  • Développer une application de streaming de données en Kafka-Stream
  • Choisir le bon framework de traitement de la donnée en fonction du besoin pour la réalisation d’une application de streaming de données
  • Comprendre le fonctionnement interne de Kafka
  • Déployer et suivre une application de streaming de données sur le long terme
  • Eviter les pièges liés à ces développements spécifiques
  • Sécuriser leurs applications de streaming de données

Méthodes pédagogiques

Entre cours, TP et retours d’expérience, nous vous proposons des solutions à ces complexités et une sensibilisation au développement d’applications streaming et notamment en utilisant Kafka-Streams.

Tarif HT

Inter : 1 800 €

Intra : Selon demande

Prochaines dates de formation

11-12 mars

Biographie

Sylvain Lequeux

Sylvain est Data Engineer chez Xebia. Il dispense la formation certifiante Cloudera Administrateur et la formation Machine Learning avec Spark. Sylvain est également passionné par le craftsmanship.

Biographie

Loïc Divad

Loïc est Data Engineer chez Xebia. Il intervient sur des problématiques liées au Big Data comme l’acquisition, le traitement et le stockage des données. Il travaille avec des outils comme Scala, Spark et Kafka.

Public visé

Développeur débutant dans le monde du streaming

Prérequis

  • Connaissances en Java ou Scala
  • Un poste de travail Unix/Linux (ou Windows avec possibilité de démarrer une machine virtuelle) avec au moins 8G de mémoire.

Validation

À la fin de cette formation, les stagiaires recevront une attestation de présence.

SOFTWARE TRAINING DONE RIGHT