Automatiseren met dbt build

Gevorderde dbt

Mike Metzger

Data Engineer

Herhaling

  • sources en seeds leveren brondata aan dbt
  • models transformeren data (meestal uit sources/seeds) voor downstream-gebruikers
  • tests kunnen sources, seeds, models valideren
    • Ingebouwd (unique, not_null, relation, accepted_values)
    • Singulier
    • Generiek / herbruikbaar
  • dbt build voert dit alles uit, meestal in productie
Gevorderde dbt

dbt build

dbt build:

  • Combinatie van meerdere taken
  • Voert models uit (dbt run)
  • Draait validaties via tests (dbt test)
  • Verwerkt seeds (dbt seed)
  • Andere opties beschikbaar (dbt snapshot)
  • VOERT GEEN dbt docs-acties uit

Commando's kunnen ook los worden gedraaid

Bouwen

1 Foto door Randy Fath op Unsplash
Gevorderde dbt

dbt build - waarom?

  • Losse subcommando's werken, maar dekken niet alle issues
    • dbt run valideert niet eerst (er draaien geen tests)
    • dbt seed kan voor sommige queries niet volledig zijn
  • dbt build bepaalt afhankelijkheden en draait alle tests vóór productiewijzigingen
  • dbt build is soms overkill bij alleen testen of kleine incrementele changes
  • Stappen kunnen desnoods handmatig worden gedraaid
Gevorderde dbt

dbt build-opties

  • dbt build --select <object>
  • dbt build -d
  • dbt build --exclude <object>
Gevorderde dbt

Laten we oefenen!

Gevorderde dbt

Preparing Video For Download...