Hive 关于merge的几个参数

昨天等飞机的时候分析一下三个容易混淆的参数:

hive.mergejob.maponly

hive.merge.mapfiles

hive.merge.mapredfiles

这三个参数是merge以哪种方式的输出文件,以及以哪种方merge.听起来是不是很绕J

hive.merge.mapfiles(defaulttrue):这个参数是用来控制是否merge MAP-ONLYJob的文件输出(如果在Hive里设置了支持DP的话,并且涉及到含有DP列的表,如果Hadoop不支持CombineInputFormat,即版本pre-0.20的话那么这个参数和下个参数是不生效的,即都是false

hive.merge.mapredfiles(defaultfalse):这个参数是用来控制merge MAP-REDUCEJob的文件输出

hive.mergejob.maponly(defaulttrue):这个参数是用来控制是以MAP-ONLY的形式来进行merge(这里有个前提条件就是需要Hadoop支持CombineInputFormat0.20之前的即使设置了这个参数true也不会生效)或者以MAP-REDUCE的形式来进行merge.不过关于这个参数还有一个未修复的Bughttps://issues.apache.org/jira/browse/HIVE-2869)因此默认值是true


你可能感兴趣的:(hive,merge)