使用 Apache Airflow 的数据管道
使用 Apache Airflow 的数据管道
简介:
引言
由 Bas Harenslak 和 Julian Rutger de Ruiter 合著的《Data Pipelines with Apache Airflow》(中文译名《使用 Apache Airflow 的数据管道》)一书,是 2021 年出版的关于 Apache Airflow 最全面且最实用的指南之一。尽管在简介中提到了 Go 语言,但实际上本书完全专注于 Python 生态系统和 Apache Airflow(它本身是用 Python 编写的)。这是原始数据中的一个错误:本书是为 Python 开发者和数据工程师编写的。这本 472 页的著作涵盖了创建、调试和运维数据管道的所有阶段——从简单的 DAG 到包含监控和扩展的生产级解决方案。
本书内容
本书以循序渐进的指南形式构建:从安装 Airflow 到云端部署。作者从基本概念开始——DAG、运算符、传感器、XCom——然后逐步过渡到高级主题:动态 DAG、测试、回填、处理大数据、与 Kubernetes 和 AWS 集成。特别关注最佳实践和常见错误。每一章都包含真实的代码示例和实践场景。
本书读者对象
本书面向希望掌握数据管道编排的数据工程师、Python 开发者和 DevOps 专业人员。它既适合刚接触 Airflow 的新手,也适合希望深入了解其内部机制和优化的有经验用户。读者需要具备 Python 和 SQL 的基础知识,但不需要有 Airflow 的使用经验。
读者将学到什么
- Airflow 基础:安装、配置、创建第一个 DAG。
- 运算符和传感器:BashOperator、PythonOperator、PostgresOperator、S3KeySensor 等。
- 任务间数据传输:XCom、变量、自定义宏。
- 动态 DAG:使用模板和配置即时生成 DAG。
- 测试与调试:DAG 的单元测试、模拟对象、本地运行。
- 回填与重跑:处理缺失数据的策略。
- 监控与告警:与 Prometheus、Grafana、Slack 集成。
- 扩展:CeleryExecutor、KubernetesExecutor、处理大数据量。
- 安全:RBAC、加密、密钥管理。
- 云集成:AWS、GCP、Azure——包含 S3、BigQuery、Cloud Storage 的示例。
本书优势
本书的主要优点之一是注重实践。每个概念都有可立即运行的代码支持。作者分享了在大型公司工作中的真实案例,这有助于避免常见的陷阱。本书语言生动,复杂主题解释得通俗易懂。特别值得一提的是关于测试和回填的章节——这些主题很少被如此详细地讨论。此外,本书针对 Airflow 2.x 版本,这在平台第二代版本发布后非常重要。
推荐人群
本书是所有构建或维护基于 Apache Airflow 的数据管道的人士的必读之作。它既适合自学,也适合作为日常工作中的参考手册。也推荐给从 Airflow 1.x 迁移到 2.x 的团队,以便快速掌握新功能。如果您想从零散的脚本转向专业的编排——本书将成为您可靠的指南。