助力工业物联网,工业大数据之服务域:AirFlow的介绍【三十一】

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 助力工业物联网,工业大数据之服务域:AirFlow的介绍【三十一】

02:任务流调度回顾

  • 目标回顾任务流调度的需求及常用工具
  • 路径
  • step1:需求
  • step2:常用工具
  • 实施
  • 需求
  • 相同的业务线,有不同的需求会有多个程序来实现,这多个程序共同完成的需求,组合在一起就是工作流或者叫做任务流
  • 基于工作流来实现任务流的自动化运行

  • 需求1:基于时间的任务运行
  • job1和job2是每天0点以后自动运行
  • job3必须等待job1运行成功才能运行
  • job5必须等待job3和job4都运行成功才能运行
  • 调度类型
  • 定时调度:基于某种时间的规律进行调度运行
  • 调度工作流
  • 依赖调度:基于某种依赖关系进行调度运行
  • 工作流中的程序的依赖关系
  • 常用工具
  • Oozie:Cloudera公司研发,功能强大,依赖于MR实现分布式,集成Hue开发使用非常方便
  • 传统开发:xml文件
<workflow>
  <start to="action1">
  </start>
  <action name='action1'>
    <shell>
    </shell>
    <ok to='action2'>
    <kill to='killAction'>
  </action>
  <action name='action2'>
    <shell>
    </shell>
    <ok to='action3'>
    <kill to='killAction'>
  </action>
  ……
</workflow>
  • 现在开发:Hue通过图形化界面自主编辑DAG
  • 场景:CDH大数据平台
  • Azkaban:LinkedIn公司研发,界面友好、插件支持丰富、自主分布式,可以使用properties或者JSON开发
  • 开发properties文件,压缩成zip压缩包
name='appname2'
type=command
dependencies=appname1
comman='sh xxxx.sh'
  • 上传到web界面中
  • 场景:Apache平台
  • AirFlow:Airbnb公司研发,自主分布式、Python语言开发和交互,应用场景更加丰富
  • 开发Python文件
# step1:导包
# step2:函数调用
  • 提交运行
  • 场景:整个数据平台全部基于Python开发
  • DolphinScheduler:易观公司研发,国产开源产品,高可靠高扩展、简单易用
  • 小结
  • 回顾任务流调度的需求及常用工具

03:AirFlow的介绍

  • 目标了解AirFlow的功能特点及应用场景
  • 路径
  • step1:背景
  • step2:设计
  • step3:功能
  • step4:特点
  • step5:应用
  • 实施
  • 起源
  • 2014年,Airbnb创造了一套工作流调度系统:Airflow,用来替他们完成业务中复杂的ETL处理。从清洗,到拼接,只用设置好一套Airflow的流程图。
  • 2016年开源到了Apache基金会。
  • 2019年成为了Apache基金会的顶级项目:http://airflow.apache.org/
  • 设计:利用Python的可移植性和通用性,快速的构建的任务流调度平台
  • 功能:基于Python实现依赖调度、定时调度
  • 特点
  • 分布式任务调度:允许一个工作流的Task在多台worker上同时执行
  • DAG任务依赖:以有向无环图的方式构建任务依赖关系
  • Task原子性:工作流上每个task都是原子可重试的,一个工作流某个环节的task失败可自动或手动进行重试
  • 自主定制性:可以基于代码构造任何你需要调度的任务或者处理工具
  • 优点:灵活性好
  • 缺点:开发复杂
  • 应用
  • 基于Python开发背景下的系统建议使用
  • 小结
  • 了解AirFlow的功能特点及应用场景

04:AirFlow的部署启动

  • 目标了解AirFlow的工具部署及管理
  • 路径
  • step1:安装部署
  • step2:启动测试
  • step3:关闭
  • 实施
  • 安装部署
  • 自行安装:《参考附录一》
  • 放弃安装:请将虚拟机快照恢复到《AirFlow安装完成》
  • 启动测试
  • 删除记录:第二次启动再做
rm -f /root/airflow/airflow-*
  • 启动Redis:消息队列:
  • nohub非挂起redis任务,/opt/redis-4.0.9/src/redis-server
  • 加载redis配置文件,/opt/redis-4.0.9/src/redis.conf
  • output.log为存储日志文件
  • 2>&1中2代表错误日志,重定向为正确日志记录再output.log中,否则错误日志会在linux命令行打印
  • &后台
nohup /opt/redis-4.0.9/src/redis-server /opt/redis-4.0.9/src/redis.conf > output.log 2>&1 &
ps -ef | grep redis
  • 启动AirFlow
# 以后台进程方式,启动服务
airflow webserver -D
airflow scheduler -D
airflow celery flower -D
airflow celery worker -D
  • 测试网络端口
  • Airflow Web UI:node1:8085
  • 用户名密码:admin
  • Celery Web UI:node1:5555
  • 小结
  • 了解AirFlow的工具部署及管理


相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
目录
相关文章
|
2月前
|
自然语言处理 大数据 应用服务中间件
大数据-172 Elasticsearch 索引操作 与 IK 分词器 自定义停用词 Nginx 服务
大数据-172 Elasticsearch 索引操作 与 IK 分词器 自定义停用词 Nginx 服务
73 5
|
3月前
|
监控 供应链 安全
物联网卡在工业领域的应用
物联网卡在工业领域的应用极大地推动了行业的智能化、自动化和高效化进程。以下是物联网卡在工业领域中各操作类型中的具体应用作用:
|
2月前
|
存储 数据采集 监控
大数据技术:开启智能决策与创新服务的新纪元
【10月更文挑战第5天】大数据技术:开启智能决策与创新服务的新纪元
|
4月前
|
DataWorks Kubernetes 大数据
飞天大数据平台产品问题之DataWorks提供的商业化服务如何解决
飞天大数据平台产品问题之DataWorks提供的商业化服务如何解决
|
1月前
|
存储 人工智能 大数据
物联网、大数据、云计算、人工智能之间的关系
物联网、大数据、云计算、人工智能之间的关系是紧密相连、相互促进的。这四者既有各自独立的技术特征,又能在不同层面上相互融合,共同推动信息技术的发展和应用。
515 0
|
2月前
|
消息中间件 监控 Ubuntu
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
96 3
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
|
2月前
|
存储 分布式计算 druid
大数据-155 Apache Druid 架构与原理详解 数据存储 索引服务 压缩机制
大数据-155 Apache Druid 架构与原理详解 数据存储 索引服务 压缩机制
69 3
|
3月前
|
数据采集 分布式计算 MaxCompute
MaxCompute 分布式计算框架 MaxFrame 服务正式商业化公告
MaxCompute 分布式计算框架 MaxFrame 服务于北京时间2024年09月27日正式商业化!
106 3
|
2月前
|
传感器 监控 供应链
物联网怎么推动工业数字化转型?
物联网(Internet of Things,loT)是指通过信息传感设备,如射频识别(RFID)、红外感应器、全球定位系统、激光扫描器等装置,按约定的协议,将任何物品与互联网连接起来,进行信息交换和通信,以实现智能化识别、定位、跟踪、监控和管理的一种网络。
41 0
|
4月前
|
机器学习/深度学习 分布式计算 BI
MaxCompute 与阿里云其他服务的协同工作
【8月更文第31天】在当今的数据驱动时代,企业需要处理和分析海量数据以获得有价值的洞察。阿里云提供了一系列的服务来满足不同层次的需求,从数据存储到高级分析。MaxCompute(原名 ODPS)作为阿里云的大规模数据处理平台,提供了强大的计算能力和丰富的功能,可以与阿里云的其他服务无缝集成,形成完整的大数据解决方案。本文将探讨 MaxCompute 如何与其他阿里云服务协同工作,包括存储服务 OSS、数据分析服务 Quick BI 以及机器学习平台 PAI。
63 1