你的團隊會從多個會隨時間改變的 API 端點擷取資料,如果為每個端點都硬寫一個獨立任務,就必須在每次新增或移除端點時修改 Dag。這個練習中,你會把這條僵硬的管線改成以資料驅動:透過 expand(),Airflow 會在執行階段讀取端點清單,並為每個項目啟動一個任務實例,讓管線能隨端點數量的變化自動調整。
expand()
本練習屬於課程
將理論付諸實踐,立即體驗我們的互動練習
你將先認識 Airflow 的元件,使用 TaskFlow API 撰寫你的第一個 Dags,並透過 XCom 在任務之間傳遞資料。
接著,你會用動態任務對映平行執行任務,使用 Assets 以資料為基準排程 Dags,並加入人工核准步驟。
當前練習
本章將透過重試與回呼處理失敗情況,使用可延後的感測器節省資源,並以三個層級測試你的 Dags。
在最後一章,你會在 DuckDB 上建置 SQL ETL 管線,使用 Asset Partitions 加入分割區感知的排程,並內嵌資料品質檢查。