สรุป: กรณีศึกษา dbt

กรณีศึกษา: การสร้าง Data Model สำหรับ E-Commerce ด้วย dbt

Susan Sun

Freelance Data Scientist

บทที่ 1: การตั้งค่า dbt

  1. ตั้งค่า:

    • ตรวจสอบการติดตั้ง: dbt --versions, which dbt
    • เริ่มต้น dbt: dbt init
  2. โหลดข้อมูล:

    • โหลด seed files ของ dbt (เช่น distribution center): dbt seed
    • โหลด source files ของ dbt เช่น {{ source('looker_ecommerce', 'orders') }}
  3. ทบทวน subcommands ของ dbt: dbt run, dbt test, dbt build

  4. ทบทวนโครงสร้างไฟล์และโฟลเดอร์ของ dbt project

กรณีศึกษา: การสร้าง Data Model สำหรับ E-Commerce ด้วย dbt

บทที่ 2: การสร้างโมเดล dbt

  1. สร้างโมเดล staging, mart และ snapshot ใน dbt
  2. เพิ่มเอกสารระดับตาราง/คอลัมน์ และ data tests ของ dbt

แผนภาพ directed acyclic graph แสดง sources และ models ทั้งหมดของ dbt พร้อมความสัมพันธ์ระหว่างกัน โดย sources แสดงด้วยสีเขียว ส่วน models และ marts แสดงด้วยสีน้ำเงิน

กรณีศึกษา: การสร้าง Data Model สำหรับ E-Commerce ด้วย dbt

บทที่ 3: Jinja กับ dbt

  1. ลดโค้ดซ้ำด้วย Jinja expressions: set, loop, macros
  2. ใช้ dbt compile และการจัดการ whitespace ในการพัฒนา
{%- set order_statuses = ['Shipped', 'Complete', 'Processing'] -%}

SELECT 
    user_id,
    {%- for order_status in order_statuses %}
        COUNT(DISTINCT CASE WHEN status = '{{ order_status }}' THEN order_id END) 
        AS num_orders_{{ order_status }}
    {%- endfor %}
FROM {{ ref('stg_looker__orders') }}
GROUP BY 1
กรณีศึกษา: การสร้าง Data Model สำหรับ E-Commerce ด้วย dbt

ยินดีด้วย!

กรณีศึกษา: การสร้าง Data Model สำหรับ E-Commerce ด้วย dbt

Preparing Video For Download...