Hive 关于merge的几个参数

分析一下Hive 关于merge的三个容易混淆的参数:

hive.mergejob.maponly

hive.merge.mapfiles

hive.merge.mapredfiles

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

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

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

Hive 的详细介绍:请点这里
Hive 的下载地址:请点这里

相关阅读

相关推荐