Creare un progetto dbt

Introduzione a dbt

Mike Metzger

Data Engineer

Cos'è un progetto dbt

  • Include i componenti per lavorare con i dati in dbt

    • Configurazione del progetto
    • Origini e destinazioni dati
    • Query SQL
    • Template
    • Documentazione
  • Implementato come struttura di cartelle

struttura cartelle dbt

Introduzione a dbt

Come creare un nuovo progetto

  • Usa il comando dbt init
    • Chiede il nome del progetto
    • Chiede il tipo di database/data warehouse
  • Puoi abbreviare con dbt init <projectname>
  • Crea la cartella principale e tutta la struttura necessaria
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
...
Introduzione a dbt

Configurare con i profili progetto

  • Un profilo rappresenta uno scenario di deploy
    • Sviluppo
    • Staging/Test
    • Produzione
  • Un progetto dbt può avere più profili
  • Definiti nel file profiles.yml
marketing_campaign_results:
  outputs:
    dev:
      type: duckdb
      path: dbt.duckdb
    prod:
      type: snowflake
      ...
  target: dev
Introduzione a dbt

YAML

  • Yet Another Markup Language
  • File di testo, ma l'indentazione conta (come in Python)
  • Usato spesso per configurazioni in sviluppo
  • Regole insidiose: allinea le voci come negli esempi
marketing_campaign_results:
  outputs:
    dev:
      type: duckdb
      path: dbt.duckdb
    prod:
      type: snowflake
      ...
  target: dev
Introduzione a dbt

DuckDB

  • Database open source serverless
    • Simile a sqlite
  • Progettato per l'analisi
  • Vettorializzato (cioè VELOCE)
  • Facile da usare

logo duckdb

Introduzione a dbt

Passons à la pratique !

Introduzione a dbt

Preparing Video For Download...