高可用Hadoop平台-Oozie工作流之Hadoop调度

  在《高可用Hadoop平台-Oozie工作流》一篇中,给大家分享了如何去单一的集成Oozie这样一个插件。今天为大家介绍如何去使用Oozie创建相关工作流运行与Hadoop上,已经在创建过程当中需要注意的事项,下面是今天的分享目录:

Oozie简介

任务工作流

截图预览

  下面开始今天的内容分享。

2.Oozie简介

  在Oozie中有几个重要的概念,他们分别是:

WorkFlow:工作流,控制工作流的开始和结束过程,以及工作流Job的执行路径,并提供一种机制来控制工作流执行路径(比如:Decision、Fork以及Join节点等),其书写方式如下所示:

<workflow-app name="[WF-DEF-NAME]" xmlns="uri:oozie:workflow:0.1"> ... 省略详细内容 ... </workflow-app>

Coordinator:多个WorkFlow可以组成一个Coordinator,可以把前几个WorkFlow的输出作为后一个WorkFlow的输入,当然也可以定义WorkFlow的触发条件,来做定时触发,其书写方式如下所示:

<coordinator-app name="[CD-DEF-NAME]" frequency="${coord:minutes(10)}" start="${start}" end="${end}" timezone="GMT+0800" xmlns="uri:oozie:coordinator:0.1"> <action> <workflow> <app-path>${workflowAppUri}</app-path> <configuration> <property> <name>jobTracker</name> <value>${jobTracker}</value> </property> <property> <name>nameNode</name> <value>${nameNode}</value> </property> <property> <name>queueName</name> <value>${queueName}</value> </property> </configuration> </workflow> </action> <action> <workflow> ... </workflow> </action> </coordinator-app>

Bundle:控制一个或多个Coordinator应用,其写法如下所示:

<bundle-app name=[NAME] xmlns='uri:oozie:bundle:0.1'> <controls> <kick-off-time>[DATETIME]</kick-off-time> </controls> <coordinator name=[NAME] > <app-path>[COORD-APPLICATION-PATH]</app-path> <configuration> <property> <name>[PROPERTY-NAME]</name> <value>[PROPERTY-VALUE]</value> </property> ... </configuration> </coordinator> ... </bundle-app>

3.任务工作流

  下面,我们在Hadoop平台下去创建这样一个工作流,首先,我们需要配置Hadoop的core-site.xml文件,在该文件中添加以下内容:

core-site.xml

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/2ea69aade9e10fb56541ccb65cbd6730.html