📦apache / airflow
← 返回首页
Apache Airflow - A platform to programmatically author, schedule, and monitor workflows
⚖️ Apache-2.0#airflow#apache#apache-airflow#python#scheduler🌐 airflow.apache.org📅 创建于 2015-04-13🔄 更新于 2026-11-07
🔗 GitHub Python

📄 仓库 README

在 GitHub 查看 ↗
来自 GitHub 仓库自述文件 · 版权归原作者所有

Apache Airflow

Category Badges
License License
PyPI PyPI version PyPI - Python Version PyPI - Downloads
Containers Docker Pulls Docker Stars Artifact HUB
Community Contributors Slack Status Commit Activity LFX Health Score
Dev tools prek
Version Build Status
Main Tests AMD main Tests ARM main
3.x Tests AMD 3.2 Tests ARM 3.2

Apache Airflow logo

Apache Airflow (or simply Airflow) is a platform to programmatically author, schedule, and monitor workflows.

When workflows are defined as code, they become more maintainable, versionable, testable, and collaborative.

Use Airflow to author workflows (Dags) that orchestrate tasks. The Airflow scheduler executes your tasks on an array of workers while following the specified dependencies. Rich command line utilities make performing complex surgeries on Dags a snap. The rich user interface makes it easy to visualize pipelines running in production, monitor progress, and troubleshoot issues when needed.

Table of contents

Project Focus

Airflow works best with workflows that are mostly static and slowly changing. When the Dag structure is similar from one run to the next, it clarifies the unit of work and continuity. Other similar projects include Luigi, Oozie and Azkaban.

Beyond traditional data pipelines, Airflow is widely used to orchestrate machine learning workflows — training, retraining, evaluation, and deployment — and increasingly to orchestrate agentic and LLM-based workloads, coordinating the steps of an AI pipeline (data prep, tool calls, model invocation, evaluation) rather than acting as the agent itself. This isn't a new direction: teams have run ML and AI workloads on Airflow for years, and the ecosystem of providers supporting these use cases (see the AI & ML section of the Airflow registry) continues to grow.

Airflow is commonly used to process data, but has the opinion that tasks should ideally be idempotent (i.e., results of the task will be the same, and will not create duplicated data in a destination system), and should not pass large quantities of data from one task to the next (though tasks can pass metadata using Airflow's XCom feature). For high-volume, data-intensive tasks, a best practice is to delegate to external services specializing in that type of work.

Airflow is not a streaming solution, but it is often used to process real-time data, pulling data off streams in batches.

Principles

  • Dynamic: Pipelines are defined in code, enabling dynamic dag generation and parameterization.
  • Extensible: The Airflow framework includes a wide range of built-in operators and can be extended to fit your needs.
  • Flexible: Airflow leverages the Jinja templating engine, allowing rich customizations.

Requirements

Apache Airflow is tested with:

Main version (dev) Stable version (3.4.0) Deprecate version (2.11.2)
Python 3.11, 3.12, 3.13, 3.14 3.10, 3.11, 3.12, 3.13, 3.14 3.10, 3.11, 3.12
Platform AMD64/ARM64 AMD64/ARM64 AMD64/ARM64(*)
Kubernetes 1.31, 1.32, 1.33, 1.34, 1.35, 1.36, 1.37 1.30, 1.31, 1.32, 1.33, 1.34,

📈 近 7 天 Star 趋势

每日新增 Star(柱)与累计 Star(线)· 数据来自 GitHub

🏆 排名变化趋势

在各榜单中的排名历史(数字越小越靠前)

📋 历史上榜记录

每次快照的详细数据
日期 榜单 排名 周期新增 总 STAR