Airflow 在最近釋出了最新的 2.6 版本,Astronomer 也在第一時間舉辦了一個講座,這篇文章記錄我在講座中看到的各種 Airflow 新功能和新修正,講座影片我放在本文最後面的參考資料,若有興趣的話也可以看看!
這次 Airflow 2.6 版本的更新包含了:
- 35+ 個新功能
- 50+ 個功能改進
- 27 個 Bug 修正
以下是本篇文章的大綱:
- Notifiers:更方便的 Pipeline 示警功能
- Continuous Timetable:可以讓 Sensor 持續運作的功能
- 可用 CLI 來測試 Connections 和查看 DAG 詳細資訊
- 新增部分 Async 非同步設定,釋放你的 Airflow 壓力
- 修正 Task 卡在 Queue 狀態的問題
- UI 介面的更新
- Pandas Serializer for XCOM:讓 Task 可以直接回傳 Pandas DataFrame
- 其他更新
- 總結
- 參考資料
Notifiers:更方便的 Pipeline 示警功能
這次多了內建的 Notifier 可以用
主要是搭配 DAG/Task 的 on_success_callback 或是 on_failure_callback 來使用
我覺得把通知直接整合進 Airflow 是一個很重要的功能
因為如果 Pipeline 壞掉卻沒有收到通知,那個後果真的非常可怕
尤其是常常 Pipeline 之間會有相依性
一個壞掉若沒有提早修復,就會造成很恐怖的連鎖反應
(例如:Data Engineer 修到瘋掉)

內建 Slack notifier
目前只有 Slack 是可以直接內建使用的,後續版本應該是還會再新增
設定的程式碼可以參考以下:

如果想要用其他的通知,就需要另外自定義
自定義的方式也可以參考他們寫的程式碼: 2-6-example-dags/dags/notifier_file_toy.py
閱讀更多»