关于大数据:Apache-Oozie学习笔记一

65次阅读

共计 1123 个字符,预计需要花费 3 分钟才能阅读完成。

作者:あおざき

起源:恒生 LIGHT 云社区

1.Oozie 概述

Oozie 是一个用来治理 Hadoop 生态圈 job 的工作流调度零碎。由 Cloudera 公司奉献给 Apache。Oozie 是运行于 Java servlet 容器上的一个 java web 利用。Oozie 的目标是依照 DAG(有向无环图)调度一系列的 Map/Reduce 或者 Hive 等工作。Oozie 工作流由 hPDL(Hadoop Process Definition Language)定义(这是一种 XML 流程定义语言)。实用场景包含:

须要按程序进行一系列工作;

须要并行处理的工作;

须要定时、周期触发的工作;

可视化作业流运行过程;

运行后果或异样的通报。

2.Oozie 架构

Oozie Client:提供命令行、java api、rest 等形式,对 Oozie 的工作流流程的提交、启动、运行等操作;

Oozie WebApp:即 Oozie Server, 实质是一个 java 利用。能够应用内置的 web 容器,也能够应用外置的 web 容器;

Hadoop Cluster:底层执行 Oozie 编排流程的各个 hadoop 生态圈组件;

3.Oozie 基本原理

Oozie 对工作流的编排,是基于 workflow.xml 文件来实现的。用户事后将工作流执行规定定制于 workflow.xml 文件中,并在 job.properties 配置相干的参数,而后由 Oozie
Server 向 MR 提交 job 来启动工作流。

工作流由两种类型的节点组成,别离是:

Control Flow Nodes:管制工作流执行门路,包含 start,end,kill,decision,fork,join。

Action Nodes:决定每个操作执行的工作类型,包含 MapReduce、java、hive、shell 等。

4.Oozie 工作流类型

(1)WorkFlow

规定绝对简略,不波及定时、批处理的工作流。程序执行流程节点。

Workflow 有个大毛病:没有定时和条件触发性能。

(2)Coordinator

Coordinator 将多个工作流 Job 组织起来,称为 Coordinator
Job,并指定触发工夫和频率,还能够配置数据集、并发数等,相似于在工作流内部减少了一个协调器来治理这些工作流的工作流 Job 的运行。

(3)Bundle

针对 coordinator 的批处理工作流。Bundle 将多个 Coordinator 治理起来,这样咱们只须要一个 Bundle 提交即可。


想向技术大佬们多多取经?开发中遇到的问题何处探讨?如何获取金融科技海量资源?

恒生 LIGHT 云社区,由恒生电子搭建的金融科技业余社区平台,分享实用技术干货、资源数据、金融科技行业趋势,拥抱所有金融开发者。

扫描下方小程序二维码,退出咱们!

正文完
 0