Cos'è un modello dbt?

Introduzione a dbt

Mike Metzger

Data Engineer

Cos'è un data model?

  • Concettuale, con definizioni diverse a seconda del contesto
  • Rappresenta il significato logico dei dati
  • Come i dati e le loro componenti sono collegati
  • Aiuta la collaborazione tra utenti
Introduzione a dbt

Cos'è un data model?

  • Concettuale, con definizioni diverse a seconda del contesto
  • Rappresenta il significato logico dei dati
  • Come i dati e le loro componenti sono collegati
  • Aiuta la collaborazione tra utenti
Specie # di zampe Velenoso
Ghepardo 4 No
Anatra 2 No
Ornitorinco 4
Serpente a sonagli 0
Introduzione a dbt

Cos'è un modello in dbt?

  • Rappresenta le varie trasformazioni
  • In genere scritto in SQL
    • Le versioni più recenti possono usare Python
  • Di solito una query SELECT
  • Ogni modello è un file di testo con estensione .sql
Introduzione a dbt

Modello dbt semplice

  1. Crea una directory in models
  2. Crea un file .sql nella directory sopra
  3. Aggiungi l'SQL nel nuovo file
  4. Esegui dbt run per materializzare il modello
bash> mkdir models/order
bash> touch models/order/customer_orders.sql
select first_name, 
       last_name,
       shipping_address,
       item_quantity
from source_table

bash> dbt run

Introduzione a dbt

Lettura da Parquet

  • Parquet?
    • Formato file binario colonnare
    • DuckDB legge i file Parquet direttamente
    • read_parquet
      • SELECT * FROM read_parquet('filename.parquet')
    • O semplicemente il nome file tra apici singoli
      • SELECT * FROM 'filename.parquet'
Introduzione a dbt

Passons à la pratique !

Introduzione a dbt

Preparing Video For Download...