Studiengang: Informatik und Kommunikationssysteme
Vertiefungsrichtungen: Data Engineering
Module: Erweiterte Datenverwaltung

Kursbeschreibung

Zum Modul Traitement des données distribuées

  • Angestrebte Kompetenzen und Lernziele

    A la fin du cours, l'étudiant-e devrait avoir une base solide sur la structure et l'implémentation d'une chaîne de traitement de données distribuéés, qui lui servira de guide pour la conception de ses propres projets. Plus précisément, les objectifs sont :

    • Définir les motivations, opportunités et challenges du stockage et traitement de données distribuées
    • Expliquer concepts de base des systèmes de données distribuées : Théorème CAP, réplication, partitionnement et consensus
    • Décrire la structure d'une chaîne de traitement des données (''data pipeline'') à travers le Data Engineering Lifecycle
    • Distinguer les modèles de stockage distribués (object, file, block, stream) et expliquer de fonctionnement détaillé de HDFS et Kafka ainsi que les concepts de base de l'object storage
    • Comparer les formats de données selon leur niveau de structure et différencier les formats de stockage structurés orientés row/record, column et table
    • Qualifier les données pour l'ingestion en termes de type de système source et caractéristiques pour proposer un modèle d'ingestion de données approprié à une situation
    • Expliquer les concepts de base du stream processing (processing/event time, triggers, watermarks, windowing, exactitude) et les illustrer au travers du modèle Datafow
    • Comparer des abstractions de stockage/transformation/présentation comme Data Lake, Data Warehouse, Data Lakehouse, Streaming Kappa/Lambda, Data Integration Platform, Modern Data stack
    • Implémenter l'ingestion, le stockage, la transformation et le serving de données distribuées en ''batch'' et ''streaming'' à travers des technologies actuelles comme Spark, Beam, Airbyte, Kafka, HDFS, Avro, Parquet, Iceberg, Trino, ....
  • Kursinhalte

    Ce cours explore une des tâches principales du Data Engineer : construire des chaînes de traitement de données (data pipelines). Lorsque l'on veut créer des systèmes traitant des masses considérables de données, on a besoin de distribuer leur stockage et traitement.

    On se concentre sur les étapes suivantes : génération, ingestion, stockage, transformation et serving (présentation) des données distribuées. Le cours est composé de cours magistral/discussions/exercices, de travaux pratiques, et d'un mini-projet commun au module.

    Le cours contient les chapitres suivants :

    • Motivations et concepts du distribué
    • Data Engineering et Data Engineering Lifecycle (''Data pipeline'')
    • Stockage distribué et batch processing 1: Stockage fichier/bloc/objet distribué, MapReduce, Data Lake, ...
    • Stockage distribué et batch processing 2: Formats structurés, Spark
    • Serving : Moteurs SQL distribués (Hive, Trino, ...) et formats ''table'' (Iceberg, ...)
    • Stockage de streams (écosystème Kafka)
    • Génération (systèmes source) et ingestion ''batch'' et ''streaming''
    • Stream Processing: concepts, modèle Dataflow, Apache Beam
    • Mini-projet intégré avec les autres cours du module pour construire une pipeline end-to-end

Unterrichtsform

Vorlesungen inkl. Übungen
24 Unterrichtseinheiten
Laborarbeit
15 Unterrichtseinheiten
project
9 Unterrichtseinheiten
Travail personnel
48 Unterrichtseinheiten

Kursbeschreibung

Gültigkeit
2025-2026
Studienjahr
3. Jahr
Semester
Herbst
Programm
Französisch,Zweisprachig
Studiengang
Informatik und Kommunikationssysteme
Kurssprache
Französisch
Code
B3C-TDDS-S
Niveau
Fortgeschrittene Stufe
Typ
Grundlagenkurs
Art der Ausbildung
Bachelor

Lernkontrolle

  • Schlussprüfung Lernkontrolle Berichte, Berichte,

Notenberechnung / Validierungsmodalitäten

Die Note des Kurses entspricht dem gewichteten Durchschnitt aller Lernkontrollen während des Semesters.

Bibliografie

Seront fournies sur la plateforme de cours Cyberlearn

Dozierende

Philippe Joye