airflow

本文介绍了Airflow的学习历程,包括环境搭建、最佳实践和官方文档阅读。Airflow是一个强大的工作流管理平台,用于编程式地定义、调度和监控任务流程。它以DAG方式组织任务,具备易用的web界面,实现业务代码和调度代码的解耦,支持Python任务定义和扩展。在数据报表开发、ETL场景中,Airflow能有效管理和调度复杂任务,提高效率。
摘要由CSDN通过智能技术生成

为什么学airflow呢?

原先在业务开发部门做后端开发;由于业务需要,从每个部门抽一名开发人员去做数据报表的开发,接到任务,内心告诉自己好好做,数据平台用于公司高层及运营人员方便查看数据的平台,在新的项目组能学到新的python和任务调度工具airflow,对自己会有很大的提升。

开启学习airflow之旅

  • 前期准备

    测试环境搭建airflow的UI界面

    airflow的最佳实战

    airflow的官方文档(全英文)

    etl技术文档

    etl-example最佳实战(代码)

    airflow中文文档

什么是airflow

  • 官方解释: Airflow is a platform to programmatically author, schedule and monitor workflows.

airflow是一个可编程、调度和监控的工作流平台。

Use Airflow to author workflows as Directed Acyclic Graphs (DAGs) of 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.

基于有向无环图(DAG),airflow可以定义一组有依赖的任务,按照依赖依次执行。airflow提供了丰富的命令行工具用于系统管控,而其web管理界面同样也可以方便的管控调度任务,并且对任务运行状态进行实时监控,方便了系统的运维和管理。

  • airflow简介:

Airflow 是 Airbnb 开源的一个用 Python 编写的工作流管理平台,自带 web UI 和调度,目前在Apache下做孵化。

airflow能用来干什么?

在实际项目中,我们经常遇到以下场景:

  • 运维人员,定时对服务器执行脚本某些脚本,最简单的方式是添加一些crond任务,但如果想追溯各个任务的执行结果时?
  • 在大数据场景下,每隔一段时间需导出线上数据、导入到大数据平台、触发数据处理等多个子操作,且各个子操作含有依赖关系时?
  • 在管理大量主机时,想要一个统一的作业管理平台,能在上面定义各种任务来管理下面的设备?

airflow通过DAG配置文件,能轻松定义各种任务及任务之间的依赖关系和调度执行,并一个可视化的操作web界面。

airflow有什么优势?

  • 自带web管理界面,易上手;

  • 业务代码和调度代码完全解耦;

  • 通过python代码定义子任务,并支持各种Operate操作器,灵活性大,能满足用户的各种需求;

  • python开源项目,支持扩展operate等插件,便于二次开发;

  • 类似的工具有akzban,quart等;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值