現在上游會發出分割的 daily_sales 事件,下游的報表 Dag 就能自動回應,只針對剛刷新的一個分割執行,而不是重新處理所有日期。上游會輸出完整的時間戳,但報表只在意行事曆的日期;將該鍵標準化正是 StartOfDayMapper 的用途。在這個練習中,你會把下游報表排程在該分割資產上,並把每個事件對應到它的那一天。
daily_sales
StartOfDayMapper
為了提供脈絡,檔案中已預先填入上游程式碼。你會在下一個練習看到兩個 Dag 如何協同運作。
本練習屬於課程
將理論付諸實踐,立即體驗我們的互動練習
你將先認識 Airflow 的元件,使用 TaskFlow API 撰寫你的第一個 Dags,並透過 XCom 在任務之間傳遞資料。
接著,你會用動態任務對映平行執行任務,使用 Assets 以資料為基準排程 Dags,並加入人工核准步驟。
本章將透過重試與回呼處理失敗情況,使用可延後的感測器節省資源,並以三個層級測試你的 Dags。
在最後一章,你會在 DuckDB 上建置 SQL ETL 管線,使用 Asset Partitions 加入分割區感知的排程,並內嵌資料品質檢查。
當前練習