Data Engineering

Formation Applications temps réel

avec Kafka-Streams

Programme

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.

Contenu du 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

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.

Durée

2 jours soit 14 heures

Tarif HT

Inter : 1 800 €

Intra : Selon demande

Prochaines dates de formation

1-3 avril

2-4 juin

Public visé

Développeur débutant dans le monde du streaming

Prérequis

Lire le Scrum Guide

Certification

Professional ScrumMaster 1 – Scrum.org.
L’examen de certification est un QCM en ligne qui se fait sur le site de Scrum.Org (80 questions en 60 minutes) 2 tentatives possibles pour le passage de l’examen.

Validation

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

Formateurs

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.

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.