Créer un projet dbt

Introduction à dbt

Mike Metzger

Data Engineer

Qu'est-ce qu'un projet dbt

  • Regroupe les éléments pour travailler avec les données dans dbt

    • Configuration du projet
    • Sources et destinations de données
    • Requêtes SQL
    • Gabarits
    • Documentation
  • Mis en œuvre sous forme d'arborescence de dossiers

structure de dossier dbt

Introduction à dbt

Comment créer un nouveau projet

  • Utilisez la commande dbt init
    • Demande le nom du projet
    • Demande le type de base de données / d'entrepôt de données
  • Peut être condensé avec dbt init <projectname>
  • Crée le dossier racine du projet et toute la structure requise
repl:~/workspace$ dbt init
16:38:37  Running with dbt=1.8.4
Enter a name for your project (letters, digits, underscore): test_project
Which database would you like to use? [1] duckdb
Enter a number: 1
...
Introduction à dbt

Définir la configuration avec des profils de projet

  • Un profil représente un scénario de déploiement
    • Développement
    • Préproduction / Test
    • Production
  • Un projet dbt peut avoir plusieurs profils
  • Définis dans le fichier profiles.yml
marketing_campaign_results:
  outputs:
    dev:
      type: duckdb
      path: dbt.duckdb
    prod:
      type: snowflake
      ...
  target: dev
Introduction à dbt

YAML

  • « Yet Another Markup Language »
  • Fichier texte où l'indentation compte (comme en Python)
  • Utilisé pour la configuration dans de nombreux contextes de développement
  • Les règles peuvent piéger ; alignez les éléments comme dans les exemples
marketing_campaign_results:
  outputs:
    dev:
      type: duckdb
      path: dbt.duckdb
    prod:
      type: snowflake
      ...
  target: dev
Introduction à dbt

DuckDB

  • Base de données libre et sans serveur
    • Semblable à sqlite
  • Conçue pour l'analytique
  • Vectorisée (donc TRÈS RAPIDE)
  • Simple à utiliser

logo de DuckDB

Introduction à dbt

Passons à la pratique !

Introduction à dbt

Preparing Video For Download...