一、hadoop调度框架

Linux Crontab 

Azkaban             https://azkaban.github.io/

Oozie             http://oozie.apache.org/

Zeus(阿里的)         https://github.com/michael8335/zeus2

二、oozie架构

1、oozie

一个基于工作流引擎的开源框架,是由Cloudera公司贡献给Apache的,它能够提供对Hadoop MapReduce和Pig Jobs的任务调度与协调。
Oozie需要部署到Java Servlet容器中运行。 Oozie工作流定义,同JBossjBPM提供的jPDL一样,也提供了类似的流程定义语言hPDL,通过XML文件格式来实现流程的定义。
对于工作流系统,一般都会有很多不同功能的节点,比如分支、并发、汇合等等。 Oozie定义了控制流节点(Control Flow Nodes)和动作节点(Action Nodes),其中控制流节点定义了流程的开始和结束,以及
控制流程的执行路径(Execution Path),如decision、fork、join等;而动作节点包括Hadoop map-reduce、Hadoop文件系统、Pig、SSH、HTTP、eMail和OoZte子流程。

2、Oozie工作流程概述

Oozie是一个基于服务器的工作流引擎, 专门用于运行工作流作业,其中包含运行Hadoop Map / Reduce和Pig作业的操作。

Oozie是一个在Java servlet容器中运行的Java Web应用程序。

出于Oozie的目的,工作流是在控制依赖性DAG(直接非循环图)中排列的动作集合(即Hadoop Map / Reduce作业,Pig作业)。
从一个动作到另一个动作的“控制依赖性”意味着第二个动作在第一个动作完成之前无法运行。 Oozie工作流定义用hPDL(类似于JBOSS JBPM jPDL 的XML过程定义语言 )编写。 Oozie工作流操作在远程系统(即Hadoop,Pig)中启动作业。在操作完成后,远程系统回调Oozie以通知操作完成,此时Oozie继续执行工作流中的下一个操作。 Oozie工作流包含控制流节点和动作节点。 控制流节点定义工作流的开始和结束(开始 ,结束 和失败 节点),并提供控制工作流执行路径(决策 ,分支 和连接 节点)的机制。 动作节点是工作流触发计算/处理任务执行的机制。Oozie为不同类型的操作提供支持:Hadoop map-reduce,Hadoop文件系统,Pig,SSH,HTTP,
eMail和Oozie子工作流。Oozie可以扩展为支持其他类型的操作。 可以参数化Oozie工作流程(使用 工作流定义中的$ {inputDir}等变量)。提交工作流时,必须提供参数值。如果正确参数化(即使用不同的输出目录),
可以同时执行几个相同的工作流作业。

3、工作流程图

OozieV1  Workflow Engine

Oozie V1是一个基于服务器的工作流引擎,专门运行带有执行Hadoop Map/Reduce和Pig作业的操作的工作流作业。

oozieV2 Lifecycle of an Oozie coordinator Engine

基于Oozie v2 isa服务器的协调器Enginel专门负责基于时间和数据触发器运行工作流。它可以基于时间连续运行工作流。每小时运行一次),
以及数据可用性(例如在运行工作流之前,等待输入数据的存在)。

oozieV3

Oozie v3是一个基于服务器的捆绑包引擎,它提供了一个更高级别的Oozie抽象,可以批处理一组协调器应用程序。
用户将能够启动/停止/挂起/恢复/重新运行bundle级别的set coordinator作业,从而实现更好更容易的操作控制。

1.1-1.4 hadoop调度框架和oozie概述的更多相关文章

  1. Hadoop调度框架

        大数据协作框架是一个桐城,就是Hadoop2生态系统中几个辅助的Hadoop2.x框架.主要如下: 1,数据转换工具Sqoop 2,文件搜集框架Flume 3,任务调度框架Oozie 4,大数 ...

  2. Java线程池管理及分布式Hadoop调度框架搭建

    平时的开发中线程是个少不了的东西,比如tomcat里的servlet就是线程,没有线程我们如何提供多用户访问呢?不过很多刚开始接触线程的开发工程师却在这个上面吃了不少苦头. 怎么做一套简便的线程开发模 ...

  3. Hadoop Streaming框架学习(一)

    Hadoop Streaming框架学习(一) Hadoop Streaming框架学习(一) 2013-08-19 12:32 by ATP_, 473 阅读, 3 评论, 收藏, 编辑 1.Had ...

  4. Hadoop Yarn框架详细解析

    在说Hadoop Yarn之前,我们先来看看Yarn是怎样出现的.在古老的Hadoop1.0中,MapReduce的JobTracker负责了太多的工作,包括资源调度,管理众多的TaskTracker ...

  5. Hadoop mapreduce框架简介

    传统hadoop MapReduce架构(老架构)   从上图中可以清楚的看出原 MapReduce 程序的流程及设计思路:   1.首先用户程序 (JobClient) 提交了一个 job,job ...

  6. 下一代Apache Hadoop MapReduce框架的架构

    背景 随着集群规模和负载增加,MapReduce JobTracker在内存消耗,线程模型和扩展性/可靠性/性能方面暴露出了缺点,为此需要对它进行大整修. 需求 当我们对Hadoop MapReduc ...

  7. Quartz.net 开源job调度框架(二)----定点执行

    在上一篇  Quartz.net 开源job调度框架(一) 中讲到了基本的使用以及配置job轮训数据执行 这种做法适用于对数据操作实时性要求不高的场景,在实际场景中还有一种比较常用的场景就是我们需要在 ...

  8. Quartz定时调度框架

    Quartz定时调度框架CronTrigger时间配置格式说明 CronTrigger时间格式配置说明 CronTrigger配置格式: 格式: [秒] [分] [小时] [日] [月] [周] [年 ...

  9. Quartz.net 开源job调度框架(一)

    Quartz.NET是一个开源的作业调度框架,非常适合在平时的工作中,定时轮询数据库同步,定时邮件通知,定时处理数据等. Quartz.NET允许开发人员根据时间间隔(或天)来调度作业.它实现了作业和 ...

随机推荐

  1. mysql (8.0 或以下)数据 卸载, 安装, 创建用户, 赋权

    卸载 安装 创建用户wmxl create user 'wmxl'@'202.115.253.71' identified by '你的密码' 如果是mysql8.0,再输入以下 ALTER USER ...

  2. Laravel建站01--开发环境部署

    内容导航 安装git 安装composer 安装Laravel 既然是开发环境,就需要源代码管理.这里使用git来管理. 一:部署开发环境之前安装git 在 Linux 上安装git 如果你想在 Li ...

  3. linux查看进程、端口

    1 查看进程pidps -ef|grep tomcat 2 查看进程占用的端口netstat -ntlp|grep pid 3 查看端口对应的进程号lsof -i:portid

  4. angular 指令封装弹出框效果

    就直接用bs的警告框啦~,Duang~ 功能 可以设置message和type,type就是bs内置的几种颜色 默认提示3秒框自动关闭,或者点击x号关闭 代码 模板 <div class=&qu ...

  5. Fedora25 下 OpenCV2.4.12 的安装

    你必须非常努力,才能看起来毫不费力.---------------感谢原作者的分享. opencv官网上面给出的 linux 下安装方式,基本上都是通过编译源码,即下载代码, cmake->ma ...

  6. 后端程序员看前端想死(三)是不是该学点js了

    CSS盒子模型 div布局 js 这些都懂一点,但仅仅是懂一点,有时间就学一下咯

  7. 多媒体开发之编码gop---什么是GOP

    所谓GOP,意思是画面组,MPEG格中的帧序列,分为I.P.B三种,如排成IBBPBBPBBPBBPBBP...样式,这种连续的帧图片组合即为GOP(画面群,GROUP OF PICTURE),是MP ...

  8. 下拉刷新swipetoloadlayout的使用方法,以及自己定义头部

    <20160930---------–更新内容 回过头看自己曾经写的这个博客非常多的废话 和效果并不适合大家去使用这个好用的控件 如今整理删掉了自己写的效果, 写了个最简单的实例给一起学习的新手 ...

  9. 二维码、条形码扫描——使用Google ZXing

    我在项目中用到了二维码扫描的技术,用的是Google提供的ZXing开源项目,它提供二维码和条形码的扫描.扫描条形码就是直接读取条形码的内容,扫描二维码是按照自己指定的二维码格式进行编码和解码. 可以 ...

  10. iOS8 PUSH解决方法

    本文转载至 http://blog.csdn.net/pjk1129/article/details/39548523     - (void)registerForRemoteNotificatio ...