Big Data

Construire et orchestrer vos pipelines ELT avec DBT et Airflow

Objectifs de la formation

  • Comprendre le rôle de dbt et d’Apache Airflow dans le modern data stack.
  • Créer et structurer un projet dbt complet, incluant modèles, tests et documentation.
  • Mettre en place des pipelines de données automatisés et reproductibles.
  • Orchestrer des exécutions dbt avec Apache Airflow et intégrer des workflows complexes.
  • Gérer le déploiement, la surveillance et l’automatisation des pipelines en production.


Programme de la formation

Introduction au modern data stack et découverte de dbt

  • Comprendre le contexte : passage de l’ETL à l’ELT, rôle du data warehouse et du cloud.
  • Présentation du modern data stack (Airbyte, dbt, Airflow, Snowflake, BigQuery, etc.).
  • Introduction à dbt (Data Build Tool) : philosophie, positionnement, fonctionnement, architecture medaillon
  • dbt Core vs dbt Cloud : différences et cas d’usage.
  • Architecture d’un projet dbt : fichiers dbt_project.yml, profiles.yml, organisation des dossiers.

Travaux pratiques

Création d’un projet dbt.
Configuration de la connexion à une base de données (PostgreSQL)
Définition des premières sources et création de modèles simples.



Structuration et bonnes pratiques de développement dbt

  • Les modèles dans dbt : tables, vues, modèles éphémères et incrémentaux.
  • Gestion des dépendances entre modèles : le graphe DAG de dbt.
  • Les matérialisations (table, view, ephemeral, incremental) : choix et implications.
  • Les macros et Jinja : introduction à la templatisation et à la factorisation du code.
  • Hooks et configurations avancées (pré- et post-hooks).
  • Optimisation des performances et bonnes pratiques de structuration de projet.

Travaux pratiques

Création de plusieurs modèles en couches (bronze, silver, gold).

Utilisation de seeds pour injecter des données de référence.

Ajout de macros et automatisation de transformations répétitives.


Qualité, documentation et collaboration avec dbt

  • Les tests dans dbt : tests intégrés (unique, not null, relationships) et tests personnalisés.
  • Création de snapshots pour suivre les évolutions des données dans le temps.
  • Génération de la documentation automatique et visualisation du lineage des modèles.
  • Gestion des packages et librairies externes (dbt_utils, codegen, audit_helper, etc.).
  • Bonnes pratiques pour le travail collaboratif : versioning, branches, CI/CD, review de modèles.

Travaux pratiques

Ajout de tests de données et de schéma.
Création d’un snapshot pour suivre des changements.
Génération et exploration d’une documentation interactive dbt.



Découverte d’Apache Airflow

  • Présentation d’Apache Airflow : rôle et positionnement dans l’écosystème data.
  • Concepts clés : DAG, Task, Operator, Sensor, Scheduler, Executor.
  • Architecture d’Airflow : Webserver, Scheduler, Worker, Metadata DB.
  • Installation et configuration d’Airflow (via Docker ou localement).
  • Survol des interfaces (UI, logs, monitoring).
  • Création de premiers DAGs et opérateurs simples.

Travaux pratiques

Installation d’Airflow via Docker Compose.
Création d’un DAG basique avec des tâches Python et Bash.
Planification et exécution automatique de tâches.



Intégration entre Airflow et dbt

  • Comment exécuter dbt dans Airflow : opérateurs dédiés, BashOperator, DbtRunOperator, etc.
  • Gestion des dépendances entre modèles dbt et autres tâches Airflow.
  • Gestion des erreurs, retries, SLA et notifications.
  • Introduction à la CI/CD pour dbt : automatisation des tests, linting, déploiements.
  • Intégration avec GitHub Actions, GitLab CI ou Jenkins.

Travaux pratiques

Création d’un DAG Airflow déclenchant un pipeline dbt complet.
Ajout d’une étape de test et de documentation automatique.
Mise en place d’alertes par email ou Slack en cas d’échec.


Airflow en production et cas d’usage avancés

  • Déploiement d’Airflow en production : choix d’executor (Local, Celery, Kubernetes).
  • Gestion de la sécurité, des connexions et des credentials (Airflow Connections, Variables, Secrets Backend).
  • Monitoring, logs et observabilité : Airflow UI, logs distants, intégration avec Prometheus / Grafana.
  • Stratégies de scaling, haute disponibilité et maintenance.
  • Exemples de workflows avancés : dépendances externes, déclencheurs, pipelines multi-projets, data quality checks automatisés.

Travaux pratiques

Simulation d’un échec de pipeline et mise en place d’un système d’alerte.
Mise en place d’un workflow orchestrant un pipeline complet (extraction, transformation dbt, validation, reporting).

MOYENS PÉDAGOGIQUES ET TECHNIQUES D’ENCADREMENT DES FORMATIONS

Modalités pédagogiques :

  • Évaluation des besoins et du profil des participants.
  • Apport théorique et méthodologique : séquences pédagogiques regroupées en différents modules.
  • Contenus des programmes adaptés en fonction des besoins identifiés pendant la formation.
  • Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de travaux pratiques, étude de cas et mise en situation.
  • Méthodes expositive, active et participative.
  • Réflexion et échanges sur cas pratiques.
  • Retours d'expériences.
  • Corrections appropriées et contrôles des connaissances à chaque étape, fonction du rythme de l’apprenant mais également des exigences requises au titre de la formation souscrite.

Éléments matériels :

  • Mise à disposition des outils nécessaires au bon déroulement des travaux pratiques.
  • Support de cours au format numérique projeté sur écran et transmis au participant en fin de la formation.

Référent pédagogique et formateur :

  • Chaque formation est sous la responsabilité du directeur pédagogique de l’organisme de formation.
  • Le bon déroulement est assuré par le formateur désigné par l’organisme de formation.
MOYENS PERMETTANT LE SUIVI ET L’APPRÉCIATION DES RÉSULTATS
  • Feuilles de présences signées des participants et du formateur par demi-journée.
  • Attestation de fin de formation mentionnant les objectifs, la nature et la durée de l’action et les résultats de l’évaluation des acquis de la formation.
Please login to get access to the quiz
Apache Airflow, fonctionnalités avancées (Prev Lesson)
(Next Lesson) Concevoir et déployer une architecture Data Mesh
Back to Big Data
Public

Ingénieurs de données, Data Analysts, Analytics Engineers, Chefs de projet data, ou toute personne souhaitant concevoir, automatiser et orchestrer des pipelines de données modernes.

Pré-requis

Connaissance de base en SQL et en Python, Connaissances de Docker recommandées

Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en effectuant le test disponible en bas de cette page.

Lieu de formation

Intra-entreprise/à distance

Dates ou période

À définir. Nous consulter

Tarif

Sur devis. Merci de nous contacter

Modalités

Pour s’inscrire à notre formation, veuillez nous contacter par mail ou téléphone.

Démarrage de la formation sous deux semaines (délai indicatif).

Nous contacer
Informations complémentaires

Pour toute réclamation, aléas ou difficultés rencontrés pendant la formation, veuillez prendre contact avec notre organisme par téléphone ou par e-mail. Nous mettrons tout en œuvre pour trouver une solution adapter.

Formation synchrone, réalisée à distance en visioconférence via l’application Microsoft Teams ou en présentiel dans les locaux du client.

Sur le même thème