จาก development สู่ production

การสร้าง Data Pipeline ด้วย Airflow

Volker Janz

Senior Developer Advocate at Astronomer

Airflow CLI

$ airflow dags trigger <dag_id>
$ airflow dags list-runs <dag_id>
$ airflow backfill create --dag-id <dag_id> ...

 

  • ชุดเครื่องมือ production ควบคู่กับ UI
  • อัตโนมัติการดำเนินงานและเขียนสคริปต์การ deploy
การสร้าง Data Pipeline ด้วย Airflow

การ trigger การรัน

$ airflow dags trigger daily_sales_load --logical-date 2026-04-20
dag_id            | logical_date             | run_id
daily_sales_load  | 2026-04-20T00:00:00+00:00 | manual__2026-...

 

  • สร้างการรันแบบ manual สำหรับวันที่ระบุ
  • flag --logical-date กำหนดวันที่ที่การรันนั้นประมวลผล
  • สังเกตว่า run_id ขึ้นต้นด้วย manual__
การสร้าง Data Pipeline ด้วย Airflow

การดูรายการการรัน

$ airflow dags list-runs daily_sales_load
run_id                           | state   | logical_date
scheduled__2026-04-23T00:00:00   | success | 2026-04-23T00:00:00
manual__2026-04-20T00:00:00      | success | 2026-04-20T00:00:00

 

  • แสดงการรันทั้งหมดของ DAG
  • prefix ใน run_id บอกวิธีที่การรันถูกสร้างขึ้น
  • scheduled__ = สร้างโดยตัว scheduler
  • manual__ = สร้างโดยคำสั่ง trigger หรือ UI
การสร้าง Data Pipeline ด้วย Airflow

การ backfill ข้อมูลย้อนหลัง

$ airflow backfill create \
    --dag-id daily_sales_load \
    --from-date 2026-04-20 \
    --to-date 2026-04-22 \
    --max-active-runs 1

 

  • ประมวลผลซ้ำช่วงวันที่ย้อนหลัง
  • สร้างการรันหนึ่งครั้งต่อช่วงเวลาที่กำหนด
  • --max-active-runs ควบคุมความพร้อมกัน
  • การรัน backfill ขึ้นต้นด้วย backfill__
การสร้าง Data Pipeline ด้วย Airflow

การรัน 3 ประเภท

ประเภทการรัน 3 แบบ พร้อม prefix และวิธีสร้าง

  • scheduled__: สร้างอัตโนมัติโดยตัว scheduler
  • manual__: สร้างโดยคำสั่ง trigger หรือปุ่มใน UI
  • backfill__: สร้างโดยคำสั่ง backfill สำหรับวันที่ย้อนหลัง
  • prefix ใน run_id บอกเสมอว่าเป็นประเภทใด
การสร้าง Data Pipeline ด้วย Airflow

ความท้าทายใน production

ความท้าทายใน production ของ Airflow: build, run และ observe

  • Build: ตั้งค่า environment ของ Airflow พัฒนา workflow ด้วย AI และ deploy โค้ดสู่ production
  • Run: ขยาย worker และรองรับ failover ข้ามภูมิภาค
  • Observe: วิเคราะห์ความล้มเหลว ติดตามความสดใหม่ของข้อมูล และ trace lineage ข้าม DAG
การสร้าง Data Pipeline ด้วย Airflow

Astro: Build

 

Astro CLI

  • Airflow แบบ local ด้วยคำสั่งเดียว
  • Deploy สู่ production ได้อย่างราบรื่น

$$

Astro IDE

  • เขียน DAG ผ่านเบราว์เซอร์
  • มี AI ช่วยเขียนโค้ด ไม่ต้องตั้งค่าในเครื่อง

ผลิตภัณฑ์ Astro Build

การสร้าง Data Pipeline ด้วย Airflow

Astro: Run และ Observe

Run

  • Elastic auto-scaling ตามคิวของ task
  • High availability พร้อม failover อัตโนมัติ
  • ไม่ต้องจัดการ infrastructure เอง

Observe

  • Pipeline lineage ข้าม DAG และตาราง
  • แจ้งเตือน SLA เชิงรุก ก่อนถึงกำหนด
  • สรุป log ด้วย AI เพื่อวิเคราะห์ต้นเหตุได้เร็วขึ้น

Astro Observe

การสร้าง Data Pipeline ด้วย Airflow

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

การสร้าง Data Pipeline ด้วย Airflow

Preparing Video For Download...