zkan
December 13, 2022, 6:31am
1
ทาง dbt Labs ทำเครื่องมือที่จะช่วยเราคอยเช็ค practices ต่าง ๆ ในโปรเจค dbt ของเราว่ายัง align กันอยู่ไหม ดีงามมาก ๆ
The dbt_project_evaluator was born: a dbt package that uses the shared language of SQL, models, and tests to identify and assert specific recommendations for a given dbt project.
ลองอ่านรายละเอียดได้ที่บทความด้านล่างนี้ครับ
สามารถดู Demo เพิ่มเติมได้ที่วีดีโอด้านล่างนี้เลย เค้าไปแชร์ที่งาน Coalesce 2022 ที่ผ่านมา
1 Like
zkan
December 13, 2022, 12:58pm
2
หลังจากที่เราเซตอัพ แล้วรันคำสั่ง
dbt build --select package:dbt_project_evaluator
เรียบร้อยแล้ว เราจะได้ tables กับ views อยู่บน data warehouse ของเรา แล้วที่ console จะมี log พวก warning เกิดขึ้น ก็ให้เราเอา warning พวกนั้นเทียบกับ rules ต่าง ๆ ที่
ยกตัวอย่างเช่น ถ้าผมเจอแบบ screenshot ด้านล่างนี้
ตรงนี้ผมก็ต้องไปหา rule ที่เป็นเรื่อง Missing Primary Key Tests พอเข้าไปอ่านแล้วก็พบว่า อ๋อ… มีโมเดลที่ผมไม่ได้เขียนเทสเรื่อง primary keys ไว้ และ dbt_project_evaluator ก็ได้สร้างโมเดล fct_missing_primary_key_tests
ที่เก็บข้อมูลโมเดลที่ไม่มีเทสเรื่อง primary keys ไว้ให้ผมแล้วด้วย!
ซึ่งผมก็สามารถที่จะเข้าไป query ดึงข้อมูลดูได้ว่าโมเดลไหนบ้างที่เป็นแบบนั้น ตามรูปด้านล่างนี้เลย
ตอนนี้เจอ warning ไปเป็นร้อย… แก้กันสนุกสนาน
1 Like