oozie有不少这方面的路径,这里再给楼主提供一个方法: 对于OOZIE,引入第三方JAR的方法是oozie-site.xml中的oozie.service.WorkflowAppService.system.libpath, 我们需要配置这个选项,并把相应的JAR包上传到这个目录下。注意,这也是一个HDFS的路径! |
job.properties中这么写: oozie.use.system.libpath=true ----> 这个是说明使用oozie的system share lib oozie.libpath=hdfs://master:9000/user/hdfs/examples/lib ----> 这个是说明使用额外的jar 比如你项目中用到的并且需要放在hdfs 运行时夹在hdfs这些包 如果需要多个hdfs路径 那么中间使用 逗号 分隔 |
com.cenzhongman.hdfs.WordCount$WordcountMapper意思应该是包名+内部类名 |
feature09 发表于 2017-10-17 09:53 默认oozie系统库在 oozie.site.xml中 用/user/${user.name}/share/lib中.可以试试这个 |
本帖最后由 feature09 于 2017-10-17 09:57 编辑 langke93 发表于 2017-10-16 18:40 大神,有几个地方怎么没看明白: 修改Mapclass(注意内部类的写法) com.cenzhongman.hdfs.WordCount$WordcountMapper 这个红色部分是什么啊。。? 1.拷贝jar包到lib目录下是将wordcount拷贝到哪个lib目录下? 2.上传包文件夹到指定目录 是什么包文件夹啊。。? 还有。。。这个wordcount代码中,不需要指定路径吧?那如何定义input和output呢? 求大神再解答一下啊,谢谢啦!!! |
本帖最后由 langke93 于 2017-10-16 18:44 编辑 feature09 发表于 2017-10-16 17:24 要修改的内容挺多的。uri:oozie:workflow:0.2这个oozie的版本。需要明白自己的版本,否则可能产生问题。修改内容如下: 修改版本为0.5【根据自己的情况】 修改程序名 修改 action 名(两处) 修改删除路径 修改 map reduce 新api 修改Mapclass(注意内部类的写法) 修改reduceclass(注意内部类的写法) 修改 map-output-key class value 修改 job-output-key class value 修改 input dir 修改 output dir 步骤如下 1.拷贝jar包到lib目录下 2.上传包文件夹到指定目录 3.上传数据文件 4.执行程序 更多推荐参考 http://www.cnblogs.com/cenzhongman/p/7245670.html |
顺便问问大神们 workflow.xml 这里的这句话“uri:oozie:workflow:0.2”是什么意思啊。。。 感觉看不太懂里面的内容啊。 |