搜索你想找的开源项目

输入名称、用途或关键词,也可粘贴 GitHub 仓库链接

分享到微信

当前解读页的微信分享二维码

用微信扫一扫打开,点击右上角「···」分享给朋友或朋友圈。

手机上可截屏后,在微信扫一扫中从相册识别二维码。

apache/airflow

数据

用 Python 代码定义 DAG 工作流,并按依赖调度、监控和回填任务的数据编排平台。

47,398
18,319
Python
Apache-2.0
创建于 11 年前

项目介绍

Apache Airflow 让工作流以 Python 代码形式定义,再按声明的依赖关系调度和监控任务。调度器把任务分发到一组 worker 上执行,Web 界面用来查看流水线状态、排查问题、重跑或回填指定日期范围,也能直接查看 DAG 源码。工作流通常称为 DAG,资产(Assets)用来记录 DAG 之间的数据依赖。

它适合结构基本固定、变化缓慢的工作流,这样任务边界和重跑行为都更可预期。除传统数据管道外,Airflow 也用于编排机器学习训练、评估、部署,以及协调 LLM 流程中的各个步骤,但它本身不是 Agent。它不适合流式处理,实时数据通常按批次从流中拉取。任务应尽量幂等,并且不在任务之间传递大量数据;XCom 用于传递元数据,大批量数据应交给专门的外部服务。

快速使用

Airflow 同时是库和应用,直接 pip install apache-airflow 可能装出无法使用的依赖组合,因此安装时要指定版本对应的 constraints 文件。下面是当前稳定版 3.3.2、Python 3.10 的写法:

pip install 'apache-airflow==3.3.2' \
 --constraint "https://raw.githubusercontent.com/apache/airflow/constraints-3.3.2/constraints-3.10.txt"

需要额外集成(如数据库、云服务)时,在包名后加 extras,constraints 保持不变:

pip install 'apache-airflow[postgres,google]==3.3.2' \
 --constraint "https://raw.githubusercontent.com/apache/airflow/constraints-3.3.2/constraints-3.10.txt"

安装完成后,按官方入门文档初始化数据库、启动 scheduler 和 Web 服务并运行第一个 DAG;同一套文档里还有完整教程。各类 provider 需要单独安装。Docker 镜像、Helm Chart 和 GitHub 标签属于基于官方发布源码制作的便捷分发方式。

运行要求与兼容性

Airflow 运行在 POSIX 系统上,生产环境只支持 Linux 发行版,社区 Docker 镜像基于 Debian Bookworm。Windows 不原生支持,需要通过 WSL2 或 Linux 容器运行。SQLite 仅用于测试和本地开发,不建议用于生产;生产数据库经过测试的是 PostgreSQL 和 MySQL,MariaDB 未测试且不推荐。

稳定版 3.3.2 支持 Python 3.10 到 3.14、AMD64 与 ARM64 平台,以及 Kubernetes 1.30 到 1.35。2.x 系列已结束生命周期,最后一个版本是 2.11.2,EOL 日期为 2026 年 4 月 22 日。Python 和 Kubernetes 的支持随上游 EOL 调整,选版本时要匹配自己的运行环境,并在支持结束前升级。

依赖策略刻意保持宽松,方便使用 DAG 的人升级库,同时用 constraints 文件锁定一套已知可用的版本组合;SQLAlchemy、Alembic、Flask、Werkzeug、Celery 和 Kubernetes 客户端等核心依赖各自单独设定上界。官方只支持 pip 和 uv 安装,Poetry 或 pip-tools 需要自行转换 constraints。项目使用 Apache-2.0 许可证。

HotRepo 点评

站内记录很有限:2026 年 11 月 6 日有一条 Python 日榜快照,当天列 Python 榜第 5,新增 16 Star,仓库总量为 47,389 Star、18,317 Fork。没有跨日快照序列,也没有讨论记录,因此这条数据只能说明一个成熟项目仍在被关注,不足以判断增长趋势。更有参考价值的是项目范围本身:长期维护的 Apache 项目、成体系的 provider 生态,以及详尽的兼容与发布策略,它面向需要可复现、以代码定义的批量管道团队,而不是轻量脚本运行器。

本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。

Hacker News 讨论

Apache Airflow
▲ 2 · 0 条评论 · 2025年7月18日
TemplateNotFound Error
▲ 1 · 0 条评论 · 2022年10月12日