5
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

airflowとはなんなのか?

Posted at

CloudComposerで初めてAirflowを触ることになったのですが、そもそもAirflowがわからなかったのでまとめてみたいと思います。

Airflowとは?

ワークフロー管理ツールです。類似のもので言うとdigdagやargoなどが該当します。
ある処理を実行して、次にある処理を実行する...といった一連の処理を管理し、処理や外部への疎通など柔軟なワークフローを組むことが可能です。

具体的にはpythonでファイルを実装して処理順番を指定していきます。

airflowの構成

image.png
https://airflow.apache.org/docs/apache-airflow/stable/concepts/overview.html
より

DAGディレクトリはワークフローの設計図が保存されている場所です。
このDAGファイルをスケジューラー(executor)が見て、タスクを実行するためにworkerへ通知します。
workerはその情報をもとに処理を実行、監視します。
それぞれの状態(実行中など)はmetadatabaseに保存されます。

webserverは上記の情報をUIに表示したり、処理を受け取ってそれぞれに処理の実行などをそれぞれに通知します。

DAGとは?

処理と順番を記述されたワークフローです。
airflowではこの処理の単位をTaskと呼ぶので、Taskとその実行順番が記載されたものといっても良いと思います。
ざっくり書くとこんな感じ↓
このファイルの実態はpythonのファイルです。

スクリーンショット 2021-06-19 21.31.23.png

図にある通り、TaskB,TaskCを並列実行(厳密にはちょっと準備が必要)させたりできます。

まとめ

Airflowを簡単にまとめてみました。
実際のソースコード云々は別にまとめたいと思います。
それでは良きAirflowライフを

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?