java发布任务到oozie_Oozie:从Oozie <java>操作启动Map-Reduce?

Oozie:从Oozie 操作启动Map-Reduce?

我正在尝试使用操作在Oozie工作stream中执行Map-Reduce任务。

O'Reilley的Apache Oozie (伊斯兰和斯里尼瓦桑2015)指出:

虽然不推荐使用Java操作,但可以使用Java操作来运行Hadoop MapReduce作业,因为MapReduce作业毕竟是Java程序。 被调用的主类可以是Hadoop MapReduce驱动程序,可以调用Hadoop API来运行MapReduce作业。 在这种模式下,Hadoop根据需要生成更多的映射器和reducer,并在集群上运行它们。

但是,我没有成功使用这种方法。

工作stream中的操作定义如下所示:

mapreduce.job.queuenamedefaultpackage.containing.TransformTool${transformIn}${transformOut}${avroJar}${avroMapReduceJar}

工具实现的main()实现如下所示:

public static void main(String[] args) throws Exception { int res = ToolRunner.run(new TransformTool(), args); if (res != 0) { throw new Exception("Error running MapReduce."); } }

上面的工作stream程每次都会出现“Error running MapReduce”exception。 我如何获得MapReduce的输出来诊断问题? 使用此Tool运行MapReduce应用程序有问题吗? 我是否使用错误的API调用?

我非常不愿意使用Oozie 操作,因为工作stream程中的每个操作都依赖于几个单独版本的AVRO架构。

这里有什么问题? 我正在使用“新” mapreduce API的任务。

感谢您的帮助。

>我如何得到MapReduce的输出…

回到基础。

由于您不在乎提及哪个版本的Hadoop以及您正在使用哪个版本的Oozie,因此我将假定“最近”设置(例如Hadoop 2.7 w / TimelineServer和Oozie 4.2)。 而且由于你没有提到你使用的是哪一种接口(命令行本地Oozie / Yarn UI?色调?),我将举几个例子,使用good'old'CLI。

> oozie jobs -localtime -len 10 -filter name=CrazyExperiment

显示“CrazyExperiment”工作stream程的最后10次执行,以便您可以在下一个命令中注入相应的“作业ID”。

> oozie job -info 0000005-151217173344062-oozie-oozi-W

从Oozie的angular度显示执行的状态。 如果你的Java动作卡在PREP模式,那么Oozie没有提交给YARN; 否则你会在“外部ID”下find类似job_1449681681381_5858东西。 但要小心! job前缀是遗留问题; 实际的YARN ID是application_1449681681381_5858 。

> oozie job -log 0000005-151217173344062-oozie-oozi-W

显示Oozie日志,可以预期。

> yarn logs -applicationId application_1449681681381_5858

显示AppMaster(容器#1)和Java动作启动器(容器#2)的合并日志 – 执行结束后。 Launcher的stdout日志包含了一大堆Ooziedebugging的东西,真正的stdout在最底层。

如果你的Java动作成功产生了另外一个YARN作业,并且你仔细地显示了子应用程序的ID,那么你应该能够在那里检索它并且运行另一个yarn logs命令。

享受你的未来5天的debugging;-)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于Django+python编写开发的毕业生就业管理系统支持学生教师角色+db数据库(毕业设计新项目).zip 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我! 基于Django+python编写开发的毕业生就业管理系统支持学生教师角色+db数据库(毕业设计新项目).zip基于Django+python编写开发的毕业生就业管理系统支持学生教师角色+db数据库(毕业设计新项目).zip基于Django+python编写开发的毕业生就业管理系统支持学生教师角色+db数据库(毕业设计新项目).zip基于Django+python编写开发的毕业生就业管理系统支持学生教师角色+db数据库(毕业设计新项目).zip基于Django+python编写开发的毕业生就业管理系统支持学生教师角色+db数据库(毕业设计新项目).zip基于Django+python编写开发的毕业生就业管理系统支持学生教师角色+db数据库(毕业设计新项目).zip基于Django+python编写开发的毕业生就业管理系统支持学生教师角色+db数据库(毕业设计新项目).zip基于Django+python编写开发的毕业生就业管理系统支持学生教师角色+db数据库(毕业设计新项目).zip基于Django+python编写开发的毕业生就业管理系统支持学生教师角色+db数据库(毕业设计新项目).zip
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值