Apache Airflow

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

Apache Airflow
Apache Airflow logo
作者 Maxime Beauchemin / Airbnb
開発元 Apache Software Foundation
初版 2015年6月3日 (2015-06-03)
リポジトリ
プログラミング
言語
Python
対応OS WindowsmacOSLinux
対応言語 Python
種別 ワークフロー管理プラットフォーム
ライセンス Apache License 2.0
公式サイト airflow.apache.org

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. 2019年8月12日時点のオリジナルよりアーカイブ。2019年9月30日閲覧。
  2. Beauchemin (2015年6月2日). Airflow: a workflow management platform”. Medium. 2019年8月13日時点のオリジナルよりアーカイブ。2019年9月30日閲覧。
  3. Airflow”. 2019年7月6日時点のオリジナルよりアーカイブ。2019年9月30日閲覧。
  4. Trencseni, Marton (2016年1月16日). Airflow review”. BytePawn. 2019年2月28日時点のオリジナルよりアーカイブ。2019年10月1日閲覧。
  5. AirflowProposal”. Apache Software Foundation (2019年3月28日). 2019年10月1日閲覧。
  6. Lipp, Cassie (2018年7月13日). Astronomer is Now the Apache Airflow Company”. americaninno. 2019年9月18日閲覧。
  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日閲覧。

外部リンク

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.