2025-11-13 23:16:25 +09:00

1.6 KiB
Raw Permalink Blame History

job-manager-by-airflow

Apach airflow

APP

Apach airflowとは

データ処理やバッチ処理(ETL/ELT)などのワークフローを 管理・自動化するためのもっとも有名なプラットフォームです。

  • できること・強み

    • Airflow は 本番の大規模ETLで強い
    • ワークフローをコード(Python)で記述できる(DAG)
    • スケジューラで定期実行できる
    • 失敗時のリトライ・アラートが強い
    • Web UIが強力
    • プラグインが豊富で拡張性が高い
  • 前提・制限 *Airflowは「DAGどこまで実行した」などの状態をデータベースで管理する仕組み です。そのため DBなしでは動きません。

Develop

Dockerで構築する

docker compose up -d

デフォユーザーは airflow / airflow

Airflow は公式的には Linux / macOS 前提で作られていて、 systemd とか unix系コマンド前提の部分がけっこうあります。Windowsならばwslで実行してください

公式のDocker composeファイルを取得する方法

curl -LfO 'https://airflow.apache.org/docs/apache-airflow/stable/docker-compose.yaml'

仮想環境

python -m venv venv
# Linux
source venv/bin/activate
# # Windows
# venv\Scripts\activate
pip install -r requirements.txt

How To Use

チュートリアル https://airflow.apache.org/docs/apache-airflow/stable/tutorial/fundamentals.html

Airflowは、dags/フォルダ内に.pyファイルを置けば自動で読み込みます。