<返回更多

在hive任务中number of reducers的探讨

2021-06-09  今日头条  尚硅谷教育
加入收藏
在hive任务中number of reducers的探讨

 

关于在hive任务中number of reducers的探讨

1.在默认情况下(set mapreduce.job.reduces=-1),实际运行计算过程中reducer的数量会由所读取文件的大小来决定。文件默认大小是256M,即每256M对应一个reduce。比如当文件大小为1G时,会启用4个reducer处理数据;当文件大小为400M时,会启用2个reducer来处理。

2.在进行分区或者sort by 操作时,需要设置mapreduce.job.reduces的数量,此时实际启用的reducer的个数等于设置值。

3.1 在进行分桶操作的情况下,当 set mapreduce.job.reduces=-1或0时,此时实际启用rediucer的数量会等于桶的个数i。

3.2在进行分桶操作的情况下,当桶的个数是i时,并且0< set mapreduce.job.reduces<=i时,启用reducer的数量正好是i的因数。在i相邻的两个因数之间,启用reducer的个数是不变的。详见下表:

当i为偶数时:

在hive任务中number of reducers的探讨

 

当i为奇数时:

在hive任务中number of reducers的探讨

 

了解更多大数据相关技术内容欢迎关注尚硅谷教育!

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>