Otomatisasi dengan dbt build

dbt Tingkat Menengah

Mike Metzger

Data Engineer

Ulasan

  • sources dan seeds memasok data awal ke dbt
  • models menangani transformasi data (biasanya dari sources / seeds) untuk pengguna hilir
  • tests dapat memvalidasi sources, seeds, models
    • Bawaan (unique, not_null, relation, accepted_values)
    • Tunggal
    • Generik / Dapat digunakan ulang
  • dbt build menjalankan semua tugas ini, biasanya di produksi
dbt Tingkat Menengah

dbt build

dbt build:

  • Gabungan beberapa tugas
  • Menjalankan model (dbt run)
  • Menjalankan validasi melalui test (dbt test)
  • Memproses seed (dbt seed)
  • Opsi lain tersedia (dbt snapshot)
  • TIDAK melakukan operasi dbt docs

Perintah dapat dijalankan satu per satu

Pembangunan

1 Foto oleh Randy Fath di Unsplash
dbt Tingkat Menengah

dbt build - mengapa?

  • Subperintah individual bagus, tetapi tidak menangani semua potensi isu
    • dbt run tidak memvalidasi terlebih dahulu (tidak ada test yang dijalankan)
    • dbt seed mungkin tidak lengkap untuk kueri tertentu
  • dbt build menentukan dependensi dan menjalankan semua test sebelum perubahan produksi
  • dbt build bisa berlebihan jika hanya menguji atau ada perubahan inkremental kecil
  • Langkah-langkah dapat dijalankan manual jika diperlukan
dbt Tingkat Menengah

Opsi dbt build

  • dbt build --select <object>
  • dbt build -d
  • dbt build --exclude <object>
dbt Tingkat Menengah

Ayo berlatih!

dbt Tingkat Menengah

Preparing Video For Download...