在oozie中覆盖hadoop的mapreduce.fileoutputcommitter.marksuccessfuljobs

Bha*_*gav 5 hadoop hive mapreduce oozie

<property>
<name>mapreduce.fileoutputcommitter.marksuccessfuljobs</name>
<value>false</value>
</property>
Run Code Online (Sandbox Code Playgroud)

我想将上面的属性覆盖为true.对于群集上的其余作业,该属性需要为false,但在我的oozie工作流中,我需要hadoop在作业完成后在输出目录中创建_SUCCESS文件.它是编写输出的工作流程中的蜂巢动作.请帮忙.

Mat*_*one 7

不幸的是,Hive通过设置它自己的NullOutputComitter来覆盖这个功能:

conf.setOutputCommitter(NullOutputCommitter.class);
Run Code Online (Sandbox Code Playgroud)

看到

src/shims/src/0.20/java/org/apache/hadoop/hive/shims/Hadoop20Shims.java
src/shims/src/common-secure/java/org/apache/hadoop/hive/shims/HadoopShimsSecure.java
Run Code Online (Sandbox Code Playgroud)

看起来你必须手动创建标志.我们已经为此提交了HIVE-3700.