大数据组件之OOZIE介绍/极速入门

1 基本概念

在字典中搜索oozie一词,可以看到如下释义:
在这里插入图片描述
在这里插入图片描述

没错,就是训象人!大象,你想到了什么?没错就是hadoop的logo,一只黄色的小象。所以光从这个翻译来看,你就应该明白oozie是做什么的了吧。接下来我们详细介绍

2 oozie概念

Hadoop常见调度框架:
(1)Linux Crontab:
Linux自带的任务调度计划,在任务比较少的情况下,可以使用这种方式,直接执行脚本,例如添加一个执行计划: 0 12 * hive -f xxx.sql
(2)Azkaban:
(3)Oozie:Cloudera公司开源
(4)Zeus:阿里开源。
Oozie是管理Hadoop作业的工作流调度系统。Oozie定义了控制流节点和动作节点。Oozie实现的功能:
(1)Workflow:顺序执行流程节点;
(2)Coordinator:定时触发workflow;
(3)Bundle Job:绑定多个Coordinator。

3 oozie特点

1 Oozie是一个管理Apache Hadoop作业的工作流调度程序系统。
2 Oozie工作流作业是操作的直接非周期图(DAGs)。
3 Oozie协调器作业是由时间(频率)和数据可用性触发的周期性Oozie工作流作业。
4 Oozie与Hadoop堆栈的其他部分集成在一起,支持几种类型的Hadoop开箱即用作业(如Java map-reduce、流映射-reduce、Pig、Hive、Sqoop和Distcp),以及系统特定的作业(如Java程序和shell脚本)。
5 Oozie是一个可伸缩、可靠和可扩展的系统。
对于我们的工作,可能需要好几个hadoop作业(job)来协作完成,往往一个job的输出会被当做另一个job的输入来使用,这个时候就涉及到了数据流的处理。我们不可能就盯着程序,等它运行完再去运行下一个程序,所以,一般的做法就是通过shell来做,但是如果涉及到的工作流很复杂(比方说有1,2,3,4四个作业,1的输出作为2 3 4的输入,然后2 3的结果运算之后再和1的结果进行某种运算……最后再输出)是很费时费力的。这里就用到了oozie——一个能把多个MR作业组合为一个逻辑工作单元(一个工作流),从而自动完成任务调用的工具。

4 Oozie四大组件服务介绍

Oozie Workflow: 该组件用于定义和执行一个特定顺序的mapreduce、hive和pig作业。

Oozie Coordinator:该组件用于支持基于事件、系统资源存在性等条件的workflow的自动化执行。

Oozie Bundle:该引擎可以定义和执行"一束"应用,从而提供一个批量化的方法,将一组Coordinator应用程序一起进行管理。

Oozie服务器等级协定(Service Level Agreement, SLA):该组件支持workflow应用程序执行过程的记录跟踪。

workflow是oozie中最基本的一个服务组件。三大服务的的关系是:bundle包含多个coordinator,coordinator包含一个workflow,workflow定义具体的action动作。

5 Oozie 工作原理

Oozie是一个管理Hadoop作业、可伸缩、可扩展、可靠的工作流调度系统,它内部定义了三种作业:

  1. 工作流作业:由一系列动作构成的有向无环图(DAGs)
  2. 协调器作业:按时间频率周期性触发Oozie工作流的作业
    3.Bundle作业:管理协调器作业
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值