Data Engineering

dbt - Fitur lanjutan

Macro Jinja, tes kustom, packages, hooks, snapshots (SCD), incremental models, dbt Cloud, CI/CD

20 pertanyaan wawancaraยท
Senior
1

Dalam dbt, apa fungsi utama dari macro Jinja?

Jawaban

Macro Jinja memungkinkan penggunaan kembali kode di beberapa model dbt. Macro bekerja seperti fungsi yang menerima parameter dan mengembalikan kode SQL yang dihasilkan secara dinamis. Hal ini menghindari duplikasi kode dan memudahkan pemeliharaan transformasi kompleks di seluruh proyek.

2

Bagaimana cara mendefinisikan macro dbt yang dapat digunakan kembali dalam sebuah file?

Jawaban

Macro dbt didefinisikan menggunakan sintaks Jinja macro/endmacro dalam file .sql di dalam folder macros. Nama macro ditentukan setelah kata kunci macro, diikuti oleh parameter dalam tanda kurung. Macro ini kemudian dapat dipanggil dari model mana pun dalam proyek.

3

Apa perbedaan antara strategi 'timestamp' dan 'check' untuk snapshots dbt?

Jawaban

Strategi timestamp membandingkan kolom tanggal pembaruan (updated_at) untuk mendeteksi perubahan, yang lebih performant karena hanya membandingkan satu kolom. Strategi check membandingkan nilai kolom yang ditentukan (check_cols) untuk mendeteksi perubahan apa pun, berguna ketika tidak ada kolom timestamp yang dapat diandalkan.

4

Kolom apa yang secara otomatis ditambahkan oleh dbt saat membuat snapshot?

5

Bagaimana cara mengkonfigurasi model incremental dengan strategi 'merge' di dbt?

+17 pertanyaan wawancara

Kuasai Data Engineering untuk wawancara berikutnya

Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.

Mulai gratis