Accueil > Formations > Intelligence artificielle & Data Science > Data Engineering & Big Data > dbt : industrialiser vos transformations de données en SQL
Formation dbt : industrialiser vos transformations de données en SQL
Passez d'une collection de scripts SQL épars à une chaîne de transformations versionnée, testée et documentée, suivant les pratiques de l'ingénierie logicielle.
Vue d'ensemble
- Maîtrise solide de SQL (jointures, agrégations, CTE, sous-requêtes)
- Familiarité avec un data warehouse (BigQuery, Snowflake, PostgreSQL ou Redshift)
- Bases de Git (clone, commit, branche)
Objectifs pédagogiques
Programme détaillé
Fondamentaux de dbt et du Modern Data Stack
– Modern Data Stack : positionnement de dbt dans la chaîne data (ingestion, stockage, transformation, restitution)
– ELT vs ETL : pourquoi la transformation se déplace dans le data warehouse
– dbt Core vs dbt Cloud : différences d’usage, arbitrage selon le contexte projet
– Rôle de l’Analytics Engineer : pratiques issues de l’ingénierie logicielle appliquées au SQL
– Tour d’horizon des composants du Modern Data Stack sur un exemple concret
– Comparaison d’un pipeline ETL classique et d’un pipeline ELT avec dbt
Mise en route d'un projet dbt
– Installation et configuration de l’environnement de développement
– `profiles.yml` et `dbt_project.yml` : configurer la connexion et les paramètres du projet
– Arborescence d’un projet dbt : dossiers `models`, `seeds`, `snapshots`, `macros`, `tests`
– Commandes de base : `dbt debug`, `dbt run`, `dbt compile`, `dbt build`
– Connexion à un data warehouse (BigQuery, Snowflake, PostgreSQL ou Redshift)
– Création d’un projet dbt connecté à un data warehouse
– Exécution d’un premier modèle de staging sur une table brute
– Exploration des artefacts générés (`target/`, `manifest.json`)
Modèles, sources et matérialisations
– Modèles dbt : écriture en SQL, bonnes pratiques de nommage
– Sources : déclaration YAML des tables brutes, `{{ source() }}` pour les référencer
– Références entre modèles : `{{ ref() }}` et gestion automatique des dépendances (DAG)
– Matérialisations : view, table, incremental, ephemeral — choisir selon le cas d’usage
– Conventions de structuration : staging / intermediate / marts
– Seeds : intégrer des données de référence versionnées dans le projet
– Construction d’un flux staging → intermediate → marts sur un jeu de données CRM (clients, commandes, produits)
– Comparaison des matérialisations view / table / incremental sur un même modèle
– Ajout d’un seed de référentiel et intégration dans un modèle
Transformations dynamiques avec Jinja et macros
– Syntaxe Jinja dans dbt : variables, blocs, filtres, expressions conditionnelles
– Modèles dynamiques : générer du SQL paramétré (filtrage conditionnel, pivots, boucles)
– Macros : créer des fonctions SQL réutilisables à l’échelle du projet
– Variables de projet : paramétrer un pipeline selon l’environnement
– Hooks : exécuter du code avant ou après un `dbt run`
– Écriture d’un modèle dynamique avec conditions Jinja
– Création d’une macro pour un calcul transverse (normalisation, cast, formatage)
– Mise en place d’un pre-hook ou post-hook sur un modèle
Fiabilisation : snapshots, tests et documentation
– Snapshots : historiser les évolutions (SCD type 2) sur des dimensions à évolution lente
– Tests built-in : `not_null`, `unique`, `relationships`, `accepted_values`
– Tests personnalisés : écrire des assertions SQL adaptées au métier
– Documentation YAML : décrire modèles, colonnes, sources
– Lineage graph : visualiser les dépendances avec `dbt docs generate` et `dbt docs serve`
– Mise en place d’un snapshot sur une table de dimensions (ex. clients)
– Ajout d’une suite de tests couvrant les modèles d’un flux complet
– Génération et exploration de la documentation et du lineage du projet
Écosystème et passage en production
– Packages dbt Hub : installer et utiliser `dbt_utils`, `codegen`, packages tiers
– Organisation d’un projet à l’échelle : conventions de nommage, structuration des dossiers
– Environnements multiples : configuration dev / prod, targets, schemas isolés
– Introduction à dbt Cloud : interface, scheduler, déclencheurs
– Introduction à la CI/CD : exécution de `dbt run` et `dbt test` sur pull request (GitHub Actions)
– Installation et exploitation de `dbt_utils` pour simplifier des modèles existants
– Configuration de deux environnements (dev / prod) avec des targets distincts
– Mise en place d’un workflow GitHub Actions exécutant `dbt build` sur pull request
Prochaines sessions
Ils nous font confiance
Cette année notre filière Data Engineering & Big Data a accompagné plus de 23 entreprises dont :
Avis des participants
That was really useful for me, even though I am a PDA. The trainer was very patient with me (I needed more explanation as I was the only non dev in this training session), and I really liked the fact that there were many exercises.…
Le formateur a été très clair et a répondu à toutes mes questions. Le rythme est adapté et j'ai reçu de l'aide qui m'a permit de ne pas être en retard. Merci
Ismail was very nice and patient!
Formation très riche en contenue (formation normalement en 2 jours, condensée en 1 journée)
Le formateur Maxime GILLOT était très au fait de toutes les technologies rencontrées pendant l formation, très à l'écoute et toujours de bon conseil !
Votre formateur
Maxime L.
Formateur Data Engineering & Big Data
Maxime intervient sur des formations portant sur le data engineering et le Big Data. Parmi les formations qui lui sont confiées figurent notamment « Airflow » et « Le rôle de Data Engineer ». Son activité de formation a débuté en 2026.
Financement
Cette formation est éligible aux financements OPCO et FNE-Formation. Nos équipes vous accompagnent dans le montage de votre dossier.
Questions fréquentes
Combien de temps dure la formation dbt : industrialiser vos transformations de données en SQL ?
Cette formation se déroule sur 2 jours.
Quels sont les prérequis pour suivre la formation dbt : industrialiser vos transformations de données en SQL ?
- Maîtrise solide de SQL (jointures, agrégations, CTE, sous-requêtes) - Familiarité avec un data warehouse (BigQuery, Snowflake, PostgreSQL ou Redshift) - Bases de Git (clone, commit, branche)
Quel est le prix de la formation dbt : industrialiser vos transformations de données en SQL ?
En inter-entreprises, elle est à 1 700 € HT par participant. Un tarif sur-mesure est également disponible sur devis.
La formation dbt : industrialiser vos transformations de données en SQL délivre-t-elle une certification ?
Cette formation ne délivre pas de certification. Une attestation de fin de formation vous sera remise à l'issue de la session.
La formation dbt : industrialiser vos transformations de données en SQL est-elle éligible à un financement OPCO ?
Oui, cette formation est éligible aux financements OPCO et FNE-Formation. Nos équipes vous accompagnent dans le montage de votre dossier.
Choisissez votre formation
Mon contact chez SPARKS est professionnel et très réactif. Les échanges sont simples, efficaces, et la collaboration se déroule dans d'excellentes conditions.
