Was ist ein dbt-Modell?

Einführung in dbt

Mike Metzger

Data Engineer

Was ist ein Datenmodell?

  • Konzeptionell, mit unterschiedlichen Definitionen je nach Kontext
  • Repräsentiert die logische Bedeutung von Daten
  • Wie sich Daten und ihre Komponenten beziehen
  • Hilft Nutzer:innen bei der Zusammenarbeit
Einführung in dbt

Was ist ein Datenmodell?

  • Konzeptionell, mit unterschiedlichen Definitionen je nach Kontext
  • Repräsentiert die logische Bedeutung von Daten
  • Wie sich Daten und ihre Komponenten beziehen
  • Hilft Nutzer:innen bei der Zusammenarbeit
Spezies # Beine Giftig
Gepard 4 Nein
Ente 2 Nein
Schnabeltier 4 Ja
Klapperschlange 0 Ja
Einführung in dbt

Was ist ein Modell in dbt?

  • Repräsentiert die einzelnen Transformationen
  • Meist in SQL geschrieben
    • Neuere Versionen können Python nutzen
  • In der Regel eine SELECT-Abfrage
  • Jedes Modell ist eine Textdatei mit .sql-Endung
Einführung in dbt

Einfaches dbt-Modell

  1. Ordner im Verzeichnis models erstellen
  2. .sql-Datei in diesem Ordner anlegen
  3. SQL-Anweisung in die neue Datei schreiben
  4. dbt run ausführen, um das Modell zu materialisieren
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

Einführung in dbt

Aus Parquet lesen

  • Parquet?
    • Spaltenbasiertes binäres Dateiformat
    • DuckDB kann Parquet direkt lesen
    • read_parquet
      • SELECT * FROM read_parquet('filename.parquet')
    • Oder einfach der Dateiname in einfachen Anführungszeichen
      • SELECT * FROM 'filename.parquet'
Einführung in dbt

Lass uns üben!

Einführung in dbt

Preparing Video For Download...