Automatisierung mit dbt build

dbt für Forgeschrittene

Mike Metzger

Data Engineer

Überblick

  • sources und seeds füttern dbt mit Daten
  • models übernehmen die Transformation von Daten (in der Regel aus sources / seeds) für nachgelagerte Nutzer
  • tests können sources, seeds, models validieren
    • Vordefiniert/Integriert (unique, not_null, relation, accepted_values)
    • Singular
    • Generisch / Wiederverwendbar
  • dbt build erledigt all diese Aufgaben; typischerweise in der Produktion
dbt für Forgeschrittene

dbt build

dbt build:

  • Kombination mehrerer Aufgaben
  • Führt Modelle aus (dbt run)
  • Validierungen über Tests (dbt test)
  • Verarbeitung von Seeds (dbt seed)
  • Weitere Optionen verfügbar (dbt snapshot)
  • FÜHRT KEINE dbt docs-Operationen aus

Befehle können einzeln ausgeführt werden

Building

1 Foto von Randy Fath auf Unsplash
dbt für Forgeschrittene

dbt build – warum?

  • Einzelne Unterbefehle funktionieren gut, beheben jedoch nicht alle potenziellen Probleme
    • dbt run validiert nicht vor der Ausführung (d. h. es werden keine Tests ausgeführt)
    • dbt seed ist möglicherweise für bestimmte Abfragen nicht ausreichend
  • dbt build ermittelt Abhängigkeiten und führt alle Tests vor Änderungen in der Produktion aus
  • dbt build könnte übertrieben sein, wenn nur getestet wird oder kleine inkrementelle Änderungen vorgenommen werden
  • Einzelschritte können bei Bedarf stattdessen manuell ausgeführt werden
dbt für Forgeschrittene

dbt build-Optionen

  • dbt build --select <object>
  • dbt build -d
  • dbt build --exclude <object>
dbt für Forgeschrittene

Lass uns üben!

dbt für Forgeschrittene

Preparing Video For Download...