
dbt - ฟีเจอร์ขั้นสูง
Jinja macros, custom tests, packages, hooks, snapshots (SCD), incremental models, dbt Cloud, CI/CD
1ใน dbt วัตถุประสงค์หลักของ Jinja macros คืออะไร?
ใน dbt วัตถุประสงค์หลักของ Jinja macros คืออะไร?
คำตอบ
Jinja macros ช่วยให้ใช้โค้ดซ้ำได้ในหลาย dbt models โดยทำงานเหมือนฟังก์ชันที่รับพารามิเตอร์และส่งคืน SQL ที่สร้างขึ้นแบบไดนามิก ซึ่งช่วยหลีกเลี่ยงการซ้ำซ้อนของโค้ดและทำให้บำรุงรักษาการแปลงที่ซับซ้อนทั่วทั้งโปรเจกต์ได้ง่ายขึ้น
2จะกำหนด dbt macro ที่ใช้ซ้ำได้ในไฟล์อย่างไร?
จะกำหนด dbt macro ที่ใช้ซ้ำได้ในไฟล์อย่างไร?
คำตอบ
dbt macro ถูกกำหนดโดยใช้ไวยากรณ์ Jinja macro/endmacro ในไฟล์ .sql ภายในโฟลเดอร์ macros ชื่อมาโครถูกระบุหลังคำสำคัญ macro ตามด้วยพารามิเตอร์ในวงเล็บ มาโครนี้สามารถเรียกใช้จากโมเดลใดๆ ในโปรเจกต์ได้
3ความแตกต่างระหว่างกลยุทธ์ 'timestamp' และ 'check' สำหรับ dbt snapshots คืออะไร?
ความแตกต่างระหว่างกลยุทธ์ 'timestamp' และ 'check' สำหรับ dbt snapshots คืออะไร?
คำตอบ
กลยุทธ์ timestamp เปรียบเทียบคอลัมน์วันที่อัปเดต (updated_at) เพื่อตรวจจับการเปลี่ยนแปลง ซึ่งให้ประสิทธิภาพดีกว่าเพราะเปรียบเทียบเพียงคอลัมน์เดียว กลยุทธ์ check เปรียบเทียบค่าของคอลัมน์ที่ระบุ (check_cols) เพื่อตรวจจับการเปลี่ยนแปลงใดๆ มีประโยชน์เมื่อไม่มีคอลัมน์ timestamp ที่เชื่อถือได้
คอลัมน์ใดบ้างที่ dbt เพิ่มโดยอัตโนมัติเมื่อสร้าง snapshot?
จะกำหนดค่า incremental model ด้วยกลยุทธ์ 'merge' ใน dbt อย่างไร?
+17 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ Data Engineering อื่นๆ
Linux & Shell - พื้นฐาน
Git & GitHub - พื้นฐาน
Python ขั้นสูงสำหรับ Data Engineering
Docker - พื้นฐาน
Google Cloud Platform - พื้นฐาน
CI/CD และคุณภาพโค้ด
Docker Compose
FastAPI - Data API
SQL ขั้นสูงสำหรับ Data Engineering
Data Lake - สถาปัตยกรรมและการนำเข้าข้อมูล
BigQuery สำหรับ Data Engineering
PostgreSQL - การดูแลระบบ
Data Modeling สำหรับ Data Engineering
Fivetran & Airbyte - การนำเข้าข้อมูล
dbt - พื้นฐาน
Apache Airflow - พื้นฐาน
Kubernetes - พื้นฐาน
รูปแบบ ETL / ELT / ETLT
Apache Airflow - ขั้นสูง
Airflow + dbt - การจัดการ Pipeline
PySpark - การประมวลผลขนาดใหญ่
Google Pub/Sub - การสตรีมข้อมูล
Apache Beam & Dataflow
Kubernetes - Production และ Scaling
Terraform - Infrastructure as Code
ฐานข้อมูล NoSQL
Data Architecture สมัยใหม่
การมอนิเตอร์และการสังเกตการณ์
IAM และความปลอดภัยของข้อมูล
เชี่ยวชาญ Data Engineering สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี