Apache Airflow 入门指南:新手快速上手数据工作流编排的完整路径

Apache Airflow 入门指南:新手快速上手数据工作流编排的完整路径 Apache Airflow 入门指南新手快速上手数据工作流编排的完整路径【免费下载链接】airflow-guidesGuides and docs to help you get up and running with Apache Airflow.项目地址: https://gitcode.com/gh_mirrors/ai/airflow-guides凌晨两点调度脚本挂了你补数据补到早上十点。调度、重试、依赖、监控这些活儿最后全压在你身上。Apache Airflow 就是为编排这类数据工作流而生的开源工具而 airflow-guides 仓库是一份帮你从零学会它的指南合集适合数据工程师、分析师以及任何想把每天手动跑一遍变成自动化的人。一张表看懂 airflow-guides 是什么项目说明项目名airflow-guidesAirflow 入门指南合集一句话定位一个专题一篇、带示例代码的 Apache Airflow 实操指南库核心能力60 多篇指南覆盖本地安装、DAG 编写、调度、资源池、动态任务、数据质量适合谁第一次接触 Airflow 的数据工程师、分析师运行环境纯 Markdown 文档浏览器或任意 Markdown 阅读器直接打开这个仓库由 Airflow 生态厂商 Astronomer 的团队编写共 60 多篇 Markdown 指南一个专题一篇。每篇开头都标注Assumed Knowledge先修知识让你知道读之前需要懂什么读完跟着示例代码就能动手。README 说明指南已整体迁移到官方文档站的 Learn 栏目仓库不再持续更新——内容仍是完整的入门参照但涉及新版本特性时以官方文档为准。3 条命令跑起来克隆指南仓库并本地试跑 Airflow第一步把指南仓库克隆到本地git clone https://gitcode.com/gh_mirrors/ai/airflow-guides第二步按顺序读两篇先读 guides/intro-to-airflow.md 搞懂 DAG有向无环图任务的依赖网络、Task、Operator 这几个核心词再读 guides/dags.md 看第一个 DAG 从 import 到依赖声明的完整写法。第三步真机试跑。装好 Dockerv18.09 以上和 Astro CLI 后在项目目录执行astro dev init astro dev startastro dev start会拉起 Webserver、Scheduler、Postgres 三个容器。浏览器打开 http://localhost:8080用户名密码都填 admin列表里就能看到一条示例 DAG。完整步骤见 guides/get-started-airflow-2.md。第一条 DAG 怎么写从每天凌晨的 CSV 到自动报表假设你有一份每天凌晨更新的 CSV早上 8 点前要把汇总发给业务方。用 crontab 串三条命令时第 2 条失败你不知情业务方也不知道数据什么时候好。dags 指南里的示例正好是这个形状load_file 读入文件run_query 跑汇总查询send_email 发通知三个任务用串成一条链DAG 级设置retries1和 5 分钟重试间隔。上到 Airflow 后UI 的 Graph View 画出整条依赖链Grid View 里每个任务实例都有状态色块和耗时哪一步挂了会自动重试配好回调还能发通知。效果是数据什么时候能看这个问题有了固定答案调度时间加任务耗时都能在 UI 上查到不用再追着开发问。几十个任务抢同一个 API用 Airflow Pool 给并发设上限DAG 多了之后会出现另一种痛一批任务同时调同一个外部 API对方直接返回 429。Airflow 不会替你限制这种并发——所有任务默认进 default_pool这个池有 128 个槽位也就是说最多 128 个任务同时跑。guides/airflow-pools.md 给出解法建一个只有 5 个槽位的池子把相关任务的pool参数指过去槽满时其余任务排队等空位。池子有三种建法UI 的 Admin → Pools 页面、命令行airflow pools set、REST API。同一池子里还可用priority_weight参数排优先级数字大的先跑。⚠️ 注意把任务指到一个不存在的池名时任务会永远不被调度而 UI 不报任何错——分配前先核对池名。文件数量每天不同动态任务不用改 DAG 代码今天目录里 200 个 CSV明天只有 3 个传统写法要么在 DAG 代码里写死任务数要么每天改代码。Airflow 2.3 引入的动态任务映射dynamic task mapping干掉了这个约束partial固定所有任务共用的参数expand按输入列表的每一项展开成一个并行任务task def add(x: int, y: int): return x y added_values add.partial(y10).expand(x[1, 2, 3])UI 的 Graph View 里这个任务会显示成add [3]方括号里就是本次运行展开出的实例数明天输入变了数字自己变。每个实例可以单独打开日志和 XCom任务间传数据的机制排查。展开规则、空列表会怎样、哪些参数不可映射guides/dynamic-tasks.md 都写清楚了。什么时候该用它什么时候别硬套对比维度适合 Airflow不适合任务节奏分钟级以上、定时的批处理ETL、报表、模型训练触发毫秒级实时流该交给流式引擎编排规模多系统、多依赖、需要审计与重跑记录一台机器上的一条 cron 命令写进 crontab 更省事两类场景明确不用考虑它一是实时流式处理Airflow 的调度单位是任务不是持续流动的数据二是一次性脚本为它启动一整套编排平台属于杀鸡用牛刀。常见坑 FAQ跑不通时先查这三条这个仓库还在更新吗README 已声明指南迁移至官方文档站 Learn 栏目仓库不再积极维护。内容仍有效查新特性以官方文档为准。任务指了自定义 Pool 后永远不运行多半是池名拼错了。Airflow 对不存在的池不做检查去 UI 的 Admin → Pools 核对名称完全一致。60 多篇指南需要按顺序读吗不需要。每篇顶部标注了先修知识按自己的场景挑即可。入门顺序建议 intro → dags → get-started。下一步把三篇入口指南读完guides/intro-to-airflow.md、guides/dags.md、guides/get-started-airflow-2.md然后沿 guides/ 目录按场景挑读。仓库克隆命令git clone https://gitcode.com/gh_mirrors/ai/airflow-guides建议直接放进团队的新人上手清单。打开 guides 目录挑一篇和你手头场景最像的指南读起来——你的第一条 Airflow 管道今天就能跑起来。【免费下载链接】airflow-guidesGuides and docs to help you get up and running with Apache Airflow.项目地址: https://gitcode.com/gh_mirrors/ai/airflow-guides创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考