分析一下Hive 关于merge的三个容易混淆的参数:
hive.mergejob.maponly
hive.merge.mapfiles
hive.merge.mapredfiles
这三个参数是merge以哪种方式的输出文件,以及以哪种方merge.听起来是不是很绕J
hive.merge.mapredfiles(defaultfalse):这个参数是用来控制merge MAP-REDUCE型Job的文件输出
hive.mergejob.maponly(defaulttrue):这个参数是用来控制是以MAP-ONLY的形式来进行merge(这里有个前提条件就是需要Hadoop支持CombineInputFormat,0.20之前的即使设置了这个参数true也不会生效)或者以MAP-REDUCE的形式来进行merge.不过关于这个参数还有一个未修复的Bug(https://issues.apache.org/jira/browse/HIVE-2869)因此默认值是true
相关阅读: