Apache Airflow

ウィキペディアから、無料の百科事典
Apache Airflow
Apache Airflow logo
作者 Maxime Beauchemin / Airbnb
開発元 Apache Software Foundation
初版 2015年6月3日 (9年前) (2015-06-03)
リポジトリ ウィキデータを編集
プログラミング
言語
Python
対応OS Windows、macOS、Linux
対応言語 Python
種別 ワークフロー管理プラットフォーム(英語版)
ライセンス Apache License 2.0
公式サイト airflow.apache.org
テンプレートを表示

Apache Airflowは、データエンジニアリングパイプライン用のオープンソースのワークフロー管理プラットフォームである。2014年10月[1]にAirbnbで開発が始まり、ますます複雑化する社内のワークフローを管理するためのソリューションとして作られた。Airflowを開発したことで、Airbnbはワークフローをプログラムで作成・スケジュールし、組み込みのAirflowユーザーインターフェイス経由でワークフローを監視できるようになった[2][3]。プロジェクトは当初からオープンソースとして公開され、2016年3月にはApache Incubatorプロジェクトになり、2019年1月にはトップレベルのApache Software Foundationプロジェクトになった。

AirflowはPythonで書かれており、ワークフローはPythonスクリプト経由で作成される。Airflowは「configuration as code」の原則に基づいて設計されている。XMLなどのマークアップ言語を使用する「configuration as code」に基づいたワークフロープラットフォームは他にも存在するが、Pythonを使用することにより、開発者がライブラリとクラスをインポートして、ワークフローを容易に作成できるようになっている。

概要

Airflowは、ワークフローのオーケストレーションを管理するために、有向非巡回グラフ(DAG)を使用している。タスクとその依存関係はPythonで定義され、Airflowはそのスケジューリングと実行を管理する。DAGは、定義されたスケジュール(例:1時間毎、1日毎)や外部イベントのトリガー(例:Hive上でのファイルの作成[4])により実行できる。従来のOozie(英語版)やAzkabanなどのDAGベースのスケジューラは、複数の構成ファイルやファイルシステムツリーに依存する傾向があったが、Airflowでは、通常1つのPythonファイルとしてDAGを記述できる[5]。

マネージドサービス

コアのオープンソースプロジェクトに関する補助サービスの提供者としては、3つのプロバイダーがよく知られている。Astronomerは、AirflowのSaaSツールと、Kubernetesにデプロイ可能な、モニタリング・アラート・DevOps・クラスター管理を支援するAirflowスタックを提供している[6]。Google Cloud Platform(GCP)は、プラットフォーム上で実行されるAirflowのマネージドバージョンとして、Cloud Composerを提供しており、他のGCPサービスとよく統合されている[7]。Amazon Web Servicesは、2020年11月からApache Airflowのマネージドワークフローを提供している[8]。

出典

  1. ↑ “Apache Airflow”. Apache Airflow. August 12, 2019時点のオリジナルよりアーカイブ。September 30, 2019閲覧。
  2. ↑ Beauchemin (June 2, 2015). “Airflow: a workflow management platform”. Medium. August 13, 2019時点のオリジナルよりアーカイブ。September 30, 2019閲覧。
  3. ↑ “Airflow”. July 6, 2019時点のオリジナルよりアーカイブ。September 30, 2019閲覧。
  4. ↑ Trencseni, Marton (January 16, 2016). “Airflow review”. BytePawn. February 28, 2019時点のオリジナルよりアーカイブ。October 1, 2019閲覧。
  5. ↑ “AirflowProposal”. Apache Software Foundation (March 28, 2019). October 1, 2019閲覧。
  6. ↑ Lipp, Cassie (July 13, 2018). “Astronomer is Now the Apache Airflow Company”. americaninno. September 18, 2019閲覧。
  7. ↑ “Google launches Cloud Composer, a new workflow automation tool for developers” (英語). TechCrunch. 2019年9月18日閲覧。
  8. ↑ “Introducing Amazon Managed Workflows for Apache Airflow (MWAA)” (英語). Amazon Web Services (2020年11月24日). 2020年12月17日閲覧。

外部リンク