
Date de dernière mise à jour du plan : 7/01/2025
Durée : 0,5 jour
La formation DBT (Data Build Tool) est dispensée à Nantes, Brest, Paris, Toulouse, Toulouse, Bordeaux, Angers, Lyon, Lille, Montpellier, Toulouse et Rennes.
DBT (Data Build Tool) est un outil open-source permettant de transformer les données directement dans l’entrepôt via des modèles SQL versionnés, testés, documentés et organisés selon des bonnes pratiques d’ingénierie logicielle. DBT s’inscrit dans une approche ELT moderne, où les transformations sont centralisées dans l’entrepôt de données.
Nos formations peuvent se faire en présentiel ou en distanciel, en intra ou inter-entreprises.
Pour toute demande de tarification, nous vous remercions de nous contacter, nous vous transmettrons un devis sous 48 heures maximum.
Objectifs de la formation DBT (Data Build Tool)
- Comprendre le rôle de dbt dans une architecture data moderne
- Installer et configurer un projet dbt
- Structurer efficacement un projet (models, snapshots, tests, macros…)
- Utiliser les principales configurations d’un modèle
- Manipuler correctement les références et la logique d’ordonnancement
- Mettre en pratique via des exercices guidés et un mini-projet
Prérequis de la formation DBT (Data Build Tool)
- Base en SQL (SELECT, JOIN, CTE)
- Connaissance générale des entrepôts de données (tables, vues, schémas)
- Notions en ligne de commande (terminal) recommandées
- Environnement Python installé (recommandé)
Public visé de la formation DBT (Data Build Tool)
- Analystes data souhaitant structurer leurs transformations de données
- Data engineers débutants
- Développeurs travaillant avec un entrepôt de données (Snowflake, BigQuery, Redshift…)
- Toute personne impliquée dans la chaîne d’analyse ou de préparation de données
Programme de la formation DBT (Data Build Tool)
Introduction & positionnement - À quoi sert dbt ?
- Place de dbt dans la stack moderne
- Limites des transformations traditionnelles (ETL, views manuelles, scripts SQL)
- Valeurs ajoutées : versionning, tests, documentation, modularité
- Architecture et principe de compilation
Les différentes versions de dbt
- dbt Core vs dbt Cloud
- Versions open-source
- Choix selon les cas d’usage en entreprise
Le découpage d’un projet dbt
- profiles.yml
- Définition des connexions à l’entrepôt
- Structure, environnements (dev, prod…)
- dbt_project.yml
- Structure globale du projet
- Paramétrages et configuration par défaut
- models
- Organisation en répertoires
- Modèles staging, intermediate, mart
- Modèle SQL vs modèle épuré (Jinja)
- snapshots
- Suivi des changements temporels
- Cas d’usage (SCD type 2)
- tests
- Tests génériques vs tests personnalisés
- Qualité, fiabilité et documentation
- Documentation automatique
- macros
- Principes de Jinja
- Réutilisation de logique
- Exemples simples de macros utiles
Les principales configurations d’un modèle
- Materializations : view, table, incremental, ephemeral
- Configurations clés : unique_key, on_schema_change, tags, docs
- Héritage des configs dans dbt_project.yml
Références internes et ordonnancement (références, graph DAG)
- Fonction ref()
- Dépendances implicites
- Construction automatique du graph
- Commandes utiles : dbt run --select, dbt ls, dbt docs generate
Exercices pratiques
Les participants réalisent un mini-projet :
Exercice 1 - Création d’un projet
- Initialisation d’un projet dbt
- Configuration du profile
Exercice 2 - Structuration
- Création de dossiers : staging, intermediate, marts
Exercice 3 - Modèles SQL
- Création d’un modèle staging
- Création d’un modèle mart
- Utilisation de ref()
Exercice 4 - Tests
- Ajout d’un test unique/not_null
- Exécution et compréhension des résultats
Exercice 5 - Snapshot
- Mise en place d’un snapshot simple
Exécution et interprétation
Exercice 6 - Macros
- Création d’une petite macro réutilisable
- Application dans un modèle
