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,参数不变。

相关文章
|
1月前
|
分布式计算 大数据 Apache
ClickHouse与大数据生态集成:Spark & Flink 实战
【10月更文挑战第26天】在当今这个数据爆炸的时代,能够高效地处理和分析海量数据成为了企业和组织提升竞争力的关键。作为一款高性能的列式数据库系统,ClickHouse 在大数据分析领域展现出了卓越的能力。然而,为了充分利用ClickHouse的优势,将其与现有的大数据处理框架(如Apache Spark和Apache Flink)进行集成变得尤为重要。本文将从我个人的角度出发,探讨如何通过这些技术的结合,实现对大规模数据的实时处理和分析。
109 2
ClickHouse与大数据生态集成:Spark & Flink 实战
|
2月前
|
Dart Android开发
鸿蒙Flutter实战:03-鸿蒙Flutter开发中集成Webview
本文介绍了在OpenHarmony平台上集成WebView的两种方法:一是使用第三方库`flutter_inappwebview`,通过配置pubspec.lock文件实现;二是编写原生ArkTS代码,自定义PlatformView,涉及创建入口能力、注册视图工厂、处理方法调用及页面构建等步骤。
68 0
|
3月前
|
监控 关系型数据库 MySQL
zabbix agent集成percona监控MySQL的插件实战案例
这篇文章是关于如何使用Percona监控插件集成Zabbix agent来监控MySQL的实战案例。
74 2
zabbix agent集成percona监控MySQL的插件实战案例
|
4月前
|
机器学习/深度学习 存储 前端开发
实战揭秘:如何借助TensorFlow.js的强大力量,轻松将高效能的机器学习模型无缝集成到Web浏览器中,从而打造智能化的前端应用并优化用户体验
【8月更文挑战第31天】将机器学习模型集成到Web应用中,可让用户在浏览器内体验智能化功能。TensorFlow.js作为在客户端浏览器中运行的库,提供了强大支持。本文通过问答形式详细介绍如何使用TensorFlow.js将机器学习模型带入Web浏览器,并通过具体示例代码展示最佳实践。首先,需在HTML文件中引入TensorFlow.js库;接着,可通过加载预训练模型如MobileNet实现图像分类;然后,编写代码处理图像识别并显示结果;此外,还介绍了如何训练自定义模型及优化模型性能的方法,包括模型量化、剪枝和压缩等。
59 1
|
4月前
|
C# Windows 开发者
当WPF遇见OpenGL:一场关于如何在Windows Presentation Foundation中融入高性能跨平台图形处理技术的精彩碰撞——详解集成步骤与实战代码示例
【8月更文挑战第31天】本文详细介绍了如何在Windows Presentation Foundation (WPF) 中集成OpenGL,以实现高性能的跨平台图形处理。通过具体示例代码,展示了使用SharpGL库在WPF应用中创建并渲染OpenGL图形的过程,包括开发环境搭建、OpenGL渲染窗口创建及控件集成等关键步骤,帮助开发者更好地理解和应用OpenGL技术。
296 0
|
4月前
|
开发者 前端开发 开发框架
JSF与移动应用,开启全新交互体验!让你的Web应用轻松征服移动设备,让用户爱不释手!
【8月更文挑战第31天】在现代Web应用开发中,移动设备的普及使得构建移动友好的应用变得至关重要。尽管JSF(JavaServer Faces)主要用于Web应用开发,但结合Bootstrap等前端框架,也能实现优秀的移动交互体验。本文探讨如何在JSF应用中实现移动友好性,并通过示例代码展示具体实现方法。使用Bootstrap的响应式布局和组件可以确保JSF页面在移动设备上自适应,并提供友好的表单输入和提交体验。尽管JSF存在组件库较小和学习成本较高等局限性,但合理利用其特性仍能显著提升用户体验。通过不断学习和实践,开发者可以更好地掌握JSF应用的移动友好性,为Web应用开发贡献力量。
53 0
|
4月前
|
API UED 开发者
如何在Uno Platform中轻松实现流畅动画效果——从基础到优化,全方位打造用户友好的动态交互体验!
【8月更文挑战第31天】在开发跨平台应用时,确保用户界面流畅且具吸引力至关重要。Uno Platform 作为多端统一的开发框架,不仅支持跨系统应用开发,还能通过优化实现流畅动画,增强用户体验。本文探讨了Uno Platform中实现流畅动画的多个方面,包括动画基础、性能优化、实践技巧及问题排查,帮助开发者掌握具体优化策略,提升应用质量与用户满意度。通过合理利用故事板、减少布局复杂性、使用硬件加速等技术,结合异步方法与预设缓存技巧,开发者能够创建美观且流畅的动画效果。
88 0
|
2月前
|
Java Maven Docker
gitlab-ci 集成 k3s 部署spring boot 应用
gitlab-ci 集成 k3s 部署spring boot 应用
|
15天前
|
消息中间件 监控 Java
您是否已集成 Spring Boot 与 ActiveMQ?
您是否已集成 Spring Boot 与 ActiveMQ?
28 0
|
5月前
|
监控 druid Java
spring boot 集成配置阿里 Druid监控配置
spring boot 集成配置阿里 Druid监控配置
311 6

热门文章

最新文章

推荐镜像

更多