首页 > 其他分享 >大数据任务调度框架Oozie

大数据任务调度框架Oozie

时间:2023-02-19 13:32:19浏览次数:40  
标签:框架 workflow Oozie job oozie 2.1 任务调度 properties

1、Oozie简介

1.1 Oozie是大数据四大协作框架之一——任务调度框架,另外三个分别为数据转换工具Sqoop,文件收集库框架Flume,大数据WEB工具Hue。

1.2 它能够提供对Hadoop MapReduce和Pig Jobs的任务调度与协调。

1.3  Oozie需要部署到Java Servlet容器中运行。

1.4 功能相似的任务调度框架还有Azkaban和Zeus。

2、Oozie三大功能模块


大数据任务调度框架Oozie_控制流

2.1 Oozie主要有三大功能模块构成:

2.1.1 workflow(工作流)--定义job任务执行;

Oozie工作流定义,同JBoss jBPM提供的jPDL一样,也提供了类似的流程定义语言hPDL,通过XML文件格式来实现流程的定义。对于工作流系统,一般都会有很多不同功能的节点,比如分支、并发、汇合等等。

Oozie定义了控制流节点(Control Flow Nodes)和动作节点(Action Nodes),其中控制流节点定义了流程的开始和结束,以及控制流程的执行路径(Execution Path),如decision、fork、join等;而动作节点包括Hadoop map-reduce、Hadoop文件系统、Pig、SSH、HTTP、eMail和Oozie子流程。

oozie本质就是一个作业协调工具(底层原理是通过将xml语言转换成mapreduce程序来做,但只是在集中map端做处理,避免shuffle的过程。)

大数据任务调度框架Oozie_控制流_02

2.1.1.1 执行workflow之前首先要进行相关配置:

①、job.properties 定义job相关属性以及参数

②、workflow.xml 定义控制流和动作节点

③、lib 存放job任务运行的相关资料文件[jar]

特别注意:

Oozie的工作流必须是一个有向无环图,实际上Oozie就相当于Hadoop的一个客户端,当用户需要执行多个关联的MR任务时,只需要将MR执行顺序写入workflow.xml,然后使用Oozie提交本次任务,Oozie会托管此任务流。

2.1.2 Coordinator:定时触发workflow,周期性执行workflow;

2.1.3 Bundle Job:绑定多个coordinator,一起提交或触发所以coordinator。

3  Oozie Cli命令

注意:使用Oozie之前必须先启动hdfs,yarn和jobhistory,这里jobhistory一开始很容易忘~

3.1 启动任务

oozie job -oozie oozie_url -config job.properties_address -run

3.2 停止任务

oozie job -oozie oozie_url -kill jobId -oozie-oozi -W

3.3 提交任务

oozie job -oozie oozie_url -config job.properties_address -submit

3.4 开始任务

oozie job -oozie oozie_url -config job.properties_address -startJobId -oozie-oozi -W

3.5 查看任务执行情况

oozie job -oozie oozie_url -config job.properties_address -info jobId -oozie-oozi -W




标签:框架,workflow,Oozie,job,oozie,2.1,任务调度,properties
From: https://blog.51cto.com/u_15867943/6066709

相关文章

  • vue框架4
    购物车案例v-model进阶<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title><scriptsrc="./js/vue.js"></script></h......
  • 利用php爬虫querylist框架 监听CSDN 关注博主的文章,并发送邮件php爬虫Demo
    有时候挺喜欢一个人的csdn里面的文章,但是又想第一时间知道更新了什么,新鲜内容。所以做了一个极其简单的,爬ssdn网站的小工具,能实现功能即可。后面可以新增规则,监听官方网站的......
  • solon框架AopContext 接口详解
    AopContext接口beanMake(Class<?>clz)使用场景:在开发插件(或在一些特殊条件下),自动扫描组件没有被扫描到,一般是因为要注册的组件没有在启动类的包下。//启动类所在包为......
  • jmeter-dubbo微信服务框架协议
    1、dubbo微信服务框架协议远程rpc服务调用,server服务+注册中心+消费者把server部署到3台机器====3server(10个方法[adduser])------注册到注册中心zookeeper(3台机器ip......
  • 【IMX6ULL学习笔记】十九、Pinctrl、GPIO驱动驱动框架
    一、I.MX6ULL的pinctrl(IOMUXC)子系统1、设备树中PIN配置信息详解打开imx6ull.dtsi文件,找到一个叫做iomuxc的节点,如下所示:iomuxc:iomuxc@020e0000{compati......
  • 【IMX6ULL学习笔记】十八、Platform 驱动框架
    一、platform驱动Linux提出了platform这个虚拟总线,相应的就有platform_driver和platform_device。platform驱动使用platform_driver结构体表示,此结构体定义在......
  • 【IMX6ULL学习笔记】十七、总线驱动框架-Platform、IIC、SPI等
    一、总线Linux总线驱动模型主要可以分为三个部分:总线、设备、驱动。Linux中的总线(bus)、驱动(driver)和设备(device)模型,也就是常说的驱动分离。Linux内核在启动时会向......
  • Encoder-Decoder框架 2
       相对于传统的规整的网络布局,EncoderDecoder模型显得比较随性,不受约束,可能也正式这种自由,使得该模型在实际中发回来巨大的作用。模型结构突破了传统的固定大小输入......
  • Encoder-Decoder框架 1
    Encoder-Decoder框架 概述   Encoder-Decoder并不是一个具体的模型,而是一个通用的框架。   Encoder和Decoder部分可以是任意文字,语音,图像,视频数据。   ......
  • pytest封装接口测试框架
    pytest封装接口自动化测试pytest是一个Python的单元测试框架,它可以很好地支持接口自动化测试。要使用pytest进行接口测试,需要进行如下步骤:安装pytest使用pip安装pyt......