Créer un projet dbt

Introduction à dbt

Mike Metzger

Data Engineer

Qu’est-ce qu’un projet dbt

  • Regroupe les composants pour travailler les données avec dbt

    • Configuration du projet
    • Sources et cibles de données
    • Requêtes SQL
    • Modèles
    • Documentation
  • Implémenté comme une arborescence de dossiers

structure de dossiers dbt

Introduction à dbt

Créer un nouveau projet

  • Utiliser la commande dbt init
    • Demande le nom du projet
    • Demande le type de base de données / entrepôt
  • 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

Configurer via les 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éfini 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, mais l’indentation compte (comme en Python)
  • Utilisé pour la configuration dans de nombreux contextes de dev
  • Règles parfois subtiles : alignez les entrées 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 open source et serverless
    • Proche de sqlite
  • Conçue pour l’analytique
  • Vectorisée (donc TRÈS RAPIDE)
  • Simple d’usage

logo duckdb

Introduction à dbt

Passons à la pratique !

Introduction à dbt

Preparing Video For Download...