Amazon MWAAがApache Airflow v2.2.2をサポートしました
いわさです。
Amazon Managed Workflow for Apache Airflow(MWAA)がAirflow v2.2を利用出来るようになりました。
マネージメントコンソールからAirflowバージョンを指定するだけですぐに利用可能です。
前回まではv2.0.2がサポートされていました。
v2.1を超えて一気にv2.2がサポートされましたね。
新機能を試す
MWAAで新しいバージョンが使えるようになりましたよ!ってだけなので、本題はここまでなのですが、せっかくなのでAirflow 2.1と2.2の新機能を少しだけ触ってみましょう。
ツリービューの自動更新機能
v2.0でグラフビューの自動更新機能が追加されていましたが、v2.1でツリービューも自動更新に対応しました。
カレンダービューの追加
こちらはv2.1で追加された新しいビューです。
DAGの実行状態をカレンダー形式で可視化出来ます。
DAGが一度でも失敗した日はfailed
として表示されます。
ツールチップからより詳細な実行数も確認可能です。
対象日をクリックすると、対象日のツリービューを開くことが出来ます。
プロバイダーページ
v2.2で、AdminタブにProviders
タブが追加されています。
プロバイダーパッケージ情報の一覧を確認することが出来ます。
カスタムタイムテーブル
おそらくv2.2で一番大きなアップデートでしょうか。
これまでcron式かdatetime.timedelta
を使うことが出来ましたが、より柔軟なタイムスケージュールを構築出来るように、カスタムタイムテーブル機能が追加されています。
カスタムタイムテーブルを使う前に、まずはプラグインを作成する必要があります。
Customizing DAG Scheduling with Timetables — Airflow Documentation
from airflow.plugins_manager import AirflowPlugin from airflow.timetables.base import Timetable class AfterWorkdayTimetable(Timetable): pass class WorkdayTimetablePlugin(AirflowPlugin): name = "workday_timetable_plugin" timetables = [AfterWorkdayTimetable]
DAGのパラメータで指定したカスタムテーブルクラスはSchedule列に表示されます。
さいごに
本日はAmazon MWAAで新たにサポートされた、Apache Airflow v2.2.2を少し触ってみました。
アップグレードも簡単かなと思ったら、現在旧バージョンからのインプレースアップグレードは対応していないようです。アップグレード方法の詳細は以下をご参照ください。
Upgrading from Apache Airflow v2.0.2 to Apache Airflow v2.2.2