dbt model คืออะไร?

dbt เบื้องต้น

Mike Metzger

Data Engineer

data model คืออะไร?

  • เป็นแนวคิดที่มีนิยามแตกต่างกันตามบริบท
  • แสดงความหมายเชิงตรรกะของข้อมูล
  • อธิบายความสัมพันธ์ระหว่างข้อมูลและองค์ประกอบต่างๆ
  • ช่วยให้ผู้ใช้ทำงานร่วมกันได้
dbt เบื้องต้น

data model คืออะไร?

  • เป็นแนวคิดที่มีนิยามแตกต่างกันตามบริบท
  • แสดงความหมายเชิงตรรกะของข้อมูล
  • อธิบายความสัมพันธ์ระหว่างข้อมูลและองค์ประกอบต่างๆ
  • ช่วยให้ผู้ใช้ทำงานร่วมกันได้
สปีชีส์ จำนวนขา มีพิษ
Cheetah 4 ไม่มี
Duck 2 ไม่มี
Platypus 4 มี
Rattlesnake 0 มี
dbt เบื้องต้น

model ใน dbt คืออะไร?

  • แสดงการแปลงข้อมูลในรูปแบบต่างๆ
  • โดยทั่วไปเขียนด้วย SQL
    • เวอร์ชันใหม่รองรับ Python ด้วย
  • มักเป็นคิวรี SELECT
  • แต่ละโมเดลเก็บอยู่ในไฟล์ข้อความนามสกุล .sql
dbt เบื้องต้น

dbt model อย่างง่าย

  1. สร้างไดเรกทอรีใน directory models
  2. สร้างไฟล์ .sql ใน directory ดังกล่าว
  3. เพิ่ม SQL statement ลงในไฟล์ที่สร้างขึ้น
  4. รัน dbt run เพื่อ materialize โมเดล
bash> mkdir models/order
bash> touch models/order/customer_orders.sql
select first_name, 
       last_name,
       shipping_address,
       item_quantity
from source_table

bash> dbt run

dbt เบื้องต้น

การอ่านข้อมูลจาก Parquet

  • Parquet คืออะไร?
    • รูปแบบไฟล์ไบนารีแบบ columnar
    • DuckDB อ่านไฟล์ Parquet ได้โดยตรง
    • read_parquet
      • SELECT * FROM read_parquet('filename.parquet')
    • หรือระบุชื่อไฟล์ในเครื่องหมายคำพูดเดี่ยวได้เลย
      • SELECT * FROM 'filename.parquet'
dbt เบื้องต้น

มาฝึกกันเถอะ!

dbt เบื้องต้น

Preparing Video For Download...