有位同事的 pipeline 每次執行都會把銷售資料往後附加,因此重跑與回補會產生重複。staging 與 sales 這兩個資料表都有一個 date 欄位(格式為 YYYY-MM-DD)。
staging
sales
date
YYYY-MM-DD
你的團隊需要讓這個 pipeline 具備冪等性:在 staging 查詢中依邏輯日期過濾,並加入 preoperator 先從 sales 資料表刪除既有列。
preoperator
本練習屬於課程
將理論付諸實踐,立即體驗我們的互動練習
你將先認識 Airflow 的元件,使用 TaskFlow API 撰寫你的第一個 Dags,並透過 XCom 在任務之間傳遞資料。
接著,你會用動態任務對映平行執行任務,使用 Assets 以資料為基準排程 Dags,並加入人工核准步驟。
當前練習
本章將透過重試與回呼處理失敗情況,使用可延後的感測器節省資源,並以三個層級測試你的 Dags。
在最後一章,你會在 DuckDB 上建置 SQL ETL 管線,使用 Asset Partitions 加入分割區感知的排程,並內嵌資料品質檢查。