探索人工智能应用场景!

大数据(十二) – Oozie

底层数据 admin 17℃ 0评论
基本概念
    目前计算框架和作业类型繁多:
        MapReduce Java、Streaming、HQL、Pig等
    如何对这些框架和作业进行统一管理和调度:
        不同作业之间存在依赖关系(DAG);
        周期性作业
        定时执行的作业
        作业执行状态监控与报警
    多种解决方案:
        Crontab
        自己设计调度系统
        直接使用开源系统

Hadoop作业流调度系统基本功能

    对常见作业类型进行调度
        MapReduce(Java、Streaming等)作业
        Hive作业
        Pig作业
        Shell ….
     根据需要对作业进行调度
        按周期调度
        定时调度……
     支持容错与报警
     可视化作业流运行过程

常见的开源作业流调度系统

     Oozie (已经成为hadoop标配)
        Yahoo!开源,基于xml表达作业依赖关系;
    Azkaban
        Linkedin开源,通过Java property配置作业依赖关系
    Zeus(宙斯) (据说不再更新)
        阿里开源,通过界面配置作业依赖关系
    其他开源系统
        Cascading(通过Java API编程实现作业依赖关系)

Oozie运行流程

Oozie基本架构

Oozie 使用方式

        Oozie CLI
        JAVA API
        REST API
        WEB UI(只读)

Oozie基本概念

         作业流由一组行为节点(Hadoop MR作业、Hive作业等)构成,且这些节点通过控制流节点相连;
                控制流节点定义了工作流的起始与结束,并控制着工作流的执行路径;
                行为节点包含一个计算/处理任务,包括:Hadoop map-reduce, HDFS, Pig, SSH, HTTP, eMail等
        Oozie工作流是通过hPDL语言(一种XML过程定义语言)编写的。

Oozie 层次结构

Oozie Action

        支持Hadoop map-reduce, HDFS, Pig, SSH, HTTP, eMail等;
        可设置重试次数。

Oozie 控制流

Coordinator

        定期执行一个工作流;
        数据准备完毕后执行一个工作流。
Oozie官网
    http://oozie.apache.org/
原文地址:http://blog.csdn.net/matthewei6/article/details/50554472

转载请注明:全球人工智能 » 大数据(十二) – Oozie

   

您的支持将鼓励我们继续努力!

[微信] 扫描二维码打赏

[支付宝] 扫描二维码打赏

喜欢 (0)or分享 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址