Apache Oozie-- 实战操作--集成 hue& 调度 mapreduce 程序|学习笔记

简介: 快速学习Apache Oozie-- 实战操作--集成 hue& 调度 mapreduce 程序

开发者学堂课程【Oozie 知识精讲与实战演练Apache Oozie-- 实战操作--集成 hue& 调度 mapreduce 程序】学习笔记,与课程紧密联系,让用户快速学习知识。 课程地址:https://developer.aliyun.com/learning/course/716/detail/12794


Apache Oozie--实战操作--集成hue&调度mapreduce程序


内容简介:

一、利用 oozie 做整合

二、直接提交 MapReduce 程序


一、利用 oozie 做整合


利用 hue 和 Oozie 来调度 MapReduce 程序,因为需要配置很多的参数,例如:输入输出的路径, class 的类型等等,所以调度 MapReduce 程序会有些复杂。

1、具体操作

(1)打开浏览器,点击 Query 下方的 Scheduler ,选择  Workflow,创建新的工作流,起名为 hue mapreduce 并将描述修改为 itcast。

(2)图片1.png

(3)选择执行节点信息,选择 MapReduce job 并拖住它放到 drop your action here 中,这时需要添加 MapReduce 程序的架包,该架包路径必须位于 HDFS 之上,可以把自己本地开发好的 MapReduce 程序提交到这里,在路径中有一个 MapReduce 程序,是官方制定,选择 hadoop-mapreduce-examples-2.7.5.jar,它的提交需要很多参数,所以需要开启新版本的 API来指定输入输出的类,输入输出的路径,这需要利用 PROPERTIES 来编辑。

图片2.png

(4)点击 PROPERTIES 添加选项,这些选项位于参考交流中,打开配置软件在 Apache Hue 中有

mapreduce_oozie_workflow.xml,这里记录了手动通过 oozie 提交 MapReduce 需要配置的参数,这些参数需要原封不动的复制。

参数如下(具体根据代码情况修改):

(1)是否启用新的 API 来进行配置

复制 mapred.mapper.new-api,注意细心,value 值为 true

(2)是否启用 reduce 新的 API

复制 mapred.reduce.new-api,value 值为 true

(3)指定MR的输出 key 的类型

输出 key 的类型跟业务相关,复制

mapreduce.job.output.key.class, 因为做关于单词的统计,输出的都是单词的类型,所以有关于 Text 的类型,所以后面 value 的值是 org.apache.hadoop.io.Text

(4)指定 MR 的输出的 value 的类型

复制 mapreduce.job.output.value.class, 输出的是单词次数用 IintWritable 来表示 ,

所以 value 的值是 org.apache.hadoop.io.IintWritable

(5)指定输入路径

复制 mapred.input.dir 粘贴,输入路径可以自己敲,指定输入路径为 /oozie/input/,所以 value 的值为 /oozie/input/

(6)指定输出路径

复制 mapred.output.dir 粘贴,输出路径同样重新指定,将它放到 oozie 下的output666, 所以 value 的值为 /oozie/output666

(7)指定执行的 map 类

复制官方制定的类 mapreduce.job.map.class 粘贴,value 的值为org.apache.hadoop.examples.Wordcount$TokenizerMapper, 这里具体根据所需的类改变

(8)指定执行的 reduce 类

复制 mapreduce.job.reduce.class 粘贴, value 的值为 org.apache.hadoop.examples.Wordcount$IntSumReduce

(9)配置 map task 的个数

可以开启,也可以不开启

最终结果如下图所示:

图片3.png

配置好后进行验证,校正好后点击按钮 save 进行保存,保存好后点击左边的按钮submit 进行提交,这就完成利用 hue 和 oozie 来提交定时任务,执行的时候可以点击 Jobs 查看 MapReduce 程序的过程,也可以点击 Workflow 具体查看调度执行的情况。

2、验证

如果出错,点击查看 Logs,Logs 是排错的唯一依据,执行完之后验证是否出错,在文件的根目录下的 oozie 中有 output666,双击 part-r-00000, 点击 Open in Browser, 确定里面的内容为单词统计的内容,这就完成了 MapReduce 程序的提交。

图片4.png


二、直接提交 MapReduce 程序

直接提交 MapReduce 程序,相当于提交一个架包。

点击 Query 下的 Editor,选择 MapReduce 程序,选择架包,然后进行添加Properties,参数不变。

相关文章
|
4月前
|
jenkins 持续交付
jenkins学习笔记之六:共享库方式集成构建工具
jenkins学习笔记之六:共享库方式集成构建工具
|
4月前
|
Java jenkins Shell
jenkins学习笔记之五:Maven、Ant、Gradl、Node构建工具集成
jenkins学习笔记之五:Maven、Ant、Gradl、Node构建工具集成
|
4月前
|
分布式计算 监控 Hadoop
详解 Apache ZooKeeper 和 Apache Oozie
【8月更文挑战第31天】
138 0
|
4月前
|
jenkins 持续交付
jenkins学习笔记之九:jenkins认证集成github
jenkins学习笔记之九:jenkins认证集成github
|
4月前
|
安全 jenkins 持续交付
jenkins学习笔记之八:jenkins认证集成gitlab
jenkins学习笔记之八:jenkins认证集成gitlab
|
4月前
|
jenkins Devops 持续交付
jenkins学习笔记之七:jenkins集成LDAP用户认证
jenkins学习笔记之七:jenkins集成LDAP用户认证
|
7月前
|
机器学习/深度学习
零基础入门语义分割-地表建筑物识别 Task6 模型集成-学习笔记
零基础入门语义分割-地表建筑物识别 Task6 模型集成-学习笔记
88 1
|
7月前
|
分布式计算 Java Hadoop
MapReduce编程:检索特定群体搜索记录和定义分片操作
MapReduce编程:检索特定群体搜索记录和定义分片操作
73 0
|
7月前
|
缓存 分布式计算 Java
MapReduce编程:join操作和聚合操作
MapReduce编程:join操作和聚合操作
128 0
|
7月前
|
存储 分布式计算 分布式数据库
对给定的数据利用MapReduce编程实现数据的清洗和预处理,编程实现数据存储到HBase数据库,实现数据的增删改查操作接口
对给定的数据利用MapReduce编程实现数据的清洗和预处理,编程实现数据存储到HBase数据库,实现数据的增删改查操作接口
65 0

热门文章

最新文章

相关实验场景

更多

推荐镜像

更多