airflow零基础入门
Airflow 入门
简介
Airflow是什么
Airflow是airbnb开发的一个任务调度平台,目前已经加入apache基金会
Airflow有什么用
Airflow是一个可编程,调度和监控的工作流平台。基于有向无环图(DAG),airflow可以定义一组有依赖的任务,按照依赖依次执行。 airflow不仅提供了丰富的命令行工具用于系统管控,还提供了一套web管理界面用于方便地管控调度任务,并且对任务运行状态进行实时监控,方便了系统的运维和管理。
因此,如果有一系列的任务需要调度,同时,各任务之间还有着依赖关系,那么可以考虑使用airflow。
与Airflow同类型的产品
有兴趣的同学可以阅读以下链接
Workflow Processing Engine Overview 2018 英文版
2018工作流引擎比较 中文版
Airflow official Tutorial
official tutorial
"""
Code that goes along with the Airflow tutorial located at:
https://github.com/apache/airflow/blob/master/airflow/example_dags/tutorial.py
"""
from airflow import DAG
# 需要使用DAG实例化一个DAG的对象,因此,DAG是必须的
from airflow.operators.bash_operator import BashOperator
from datetime import datetime, timedelta"""
default_args是一个词典,之后会将此词典传入DAG的构造函数中.
DAG中的task在构造时将会这些值来初始化。
这种设计是将一些公共的配置提出来,
尤其是一些实例化task必备的参数,例如'owner'等。
更多可用的参数请参考 https://airflow.apache.org/code.html#airflow.models.BaseOperator
""""
default_args = {'owner': 'airflow','depends_on_past': False,'start_date': datetime(2015, 6, 1),'email': ['airflow@example.com'],'email_on_failure': False,'email_on_retry': False,'retries': 1,'retry_delay': timedelta(minutes=5),# 'queue': 'bash_queue',# 'pool': 'backfill',# 'priority_weight': 10,# 'end_date': datetime(2016, 1, 1),
}"""
实例化一个DAG对象,实例化DAG时必须传入一个独一无二的tag_id,然后将之前定义好的默认参数传入,同时,也传入了schedule_interval
"""
dag = DAG('tutorial', default_args=default_args, schedule_interval=timedelta(days=1))# t1, t2 and t3 are examples of tasks created by instantiating operators
"""
task 是BashOperator的实例
task_id同来标致task
bash_command 是执行的命令
dag为之前实例化的DAG对象
"""
t1 = BashOperator(task_id='print_date',bash_command='date',dag=dag)t2 = BashOperator(task_id='sleep',bash_command='sleep 5',retries=3, # 可以重写默认的参数dag=dag)# Jinja模板
templated_command = """{% for i in range(5) %}echo "{{ ds }}" # 变量echo "{{ macros.ds_add(ds, 7)}}" #函数echo "{{ params.my_param }}" # 词典{% endfor %}
"""t3 = BashOperator(task_id='templated',bash_command=templated_command, params={'my_param': 'Parameter I passed in'},dag=dag)t2.set_upstream(t1)
t3.set_upstream(t1)
# 等价于 t1 >> [t2, t3]
复制代码
Airflow 实践
Airflow安装
install
pip install apache-airflow
如果出现安装失败或者初始化db失败,可以看下是否是因为某个包安装失败或者版本不匹配,然后针对性地安装相关包即可
转载于:https://juejin.im/post/5c9618b8f265da60f16323b4
airflow零基础入门相关推荐
- python 二进制流转图片_Python零基础入门到精通-5.1节:Python程序的执行过程
教程引言: 系统地讲解计算机基础知识,Python的基础知识, 高级知识,web开发框架,爬虫开发,数据结构与算法,nginx, 系统架构.一步步地帮助你从入门到就业. 5.1.1 在命令行中执行Py ...
- 【JAVA零基础入门系列】Day2 Java集成开发环境IDEA
[JAVA零基础入门系列](已完结)导航目录 Day1 开发环境搭建 Day2 Java集成开发环境IDEA Day3 Java基本数据类型 Day4 变量与常量 Day5 Java中的运算符 Day ...
- 零基础入门jQuery视频教程
零基础入门jQuery最新版开发.NET富客户端应用(选择器.DOM操作.事件和动画.Ajax应用.插件.Mobile) 课程分类:.NET+Jquery 适合人群:初级 课时数量:35课时 用到技术 ...
- 【组队学习】【24期】零基础入门语音识别(食物声音识别)
零基础入门语音识别(食物声音识别) 开源内容: https://github.com/datawhalechina/team-learning-nlp/tree/master/FoodVoiceRec ...
- 【组队学习】【23期】Datawhale零基础入门数据挖掘(心跳信号分类)
零基础入门数据挖掘(心跳信号分类) 开源内容:https://github.com/datawhalechina/team-learning-data-mining/tree/master/Heart ...
- 零基础入门CV赛事,理论结合实践
Datawhale干货 作者:阿水,Datawhale成员 本次分享的背景是,Datawhle联合天池发布的学习赛:零基础入门CV赛事之街景字符识别.本文以该比赛为例,对计算机视觉赛事中,赛事理解和B ...
- 「建模调参」之零基础入门数据挖掘
Datawhale 作者:徐韬 ,Datawhale优秀学习者 摘要:对于数据挖掘项目,本文将学习如何建模调参?从简单的模型开始,如何去建立一个模型:如何进行交叉验证:如何调节参数优化等. 建模调参: ...
- 「特征工程」之零基础入门数据挖掘
Datawhale 作者:吴忠强,Datawhale优秀学习者 摘要:对于数据挖掘项目,本文将学习应该从哪些角度做特征工程?从哪些角度做数据清洗,如何对特征进行增删,如何使用PCA降维技术等. 特征工 ...
- 「数据分析」之零基础入门数据挖掘
Datawhale 作者:王瑞楠,Datawhale优秀学习者 摘要:对于数据挖掘项目,本文将学习应该从哪些角度分析数据?如何对数据进行整体把握,如何处理异常值与缺失值,从哪些维度进行特征及预测值分析 ...
最新文章
- 迁移学习,让深度学习不再困难……
- java 线程池原理分析
- stm32IAP代码升级小结
- 服务器修改mime类型,服务器上没有设置mime类型
- Asp.Net Core实战
- 做决定前别拍脑袋:两个成功案例看懂A/B测试
- Zblog极致·APP下载单页主题
- Adobe Dreamweaver 2021下载与安装教程
- Python菜鸟教程学习笔记
- hard sigmoid函数
- php源码后台密码被改了,帝国cms后台密码重置插件后台密码恢复找回密码工具
- 知识图谱概论(二):概念具象化描述
- python程序30行_30行Python代码刷王者荣耀金币,还怕没有金币买英雄?
- 微信开发获取签名wx.config
- 150 个 word 常用文书模板 推荐(附下载地址)
- 流氓软件自动安装恶意插件导致浏览器闪退问题
- 2022最常用且好用的IDEA插件
- 把图片转换成视频-ffmpeg
- map什么意思java_map的意思是什么,java中Maplt;?,?gt;是什么意思
- 网际协议IP(计算机网络)
热门文章
- 疯狂.NET架构通用权限后台管理工具演示版2.0下载
- HBase+Phoenix整合入门--集群搭建
- jsr133-第一二章
- 【C#每日一贴】ArrayList 转换成byte数组
- 先判断对象是否为NULL再进行操作
- php pclzip.lib.php,php使用pclzip类实现文件压缩的方法(附pclzip类下载地址)
- 实现歌词效果自动滚动_只需五步,专业Pr软件实现视频歌词渐变色效果,你学会了吗?...
- 配置MySQL8.0
- MySQL高级 - 日志 - 慢查询日志
- MySQL高级 - 查询缓存 - 开启查询缓存