hive设置map和reduce数量

如何设置map个数 【hive设置map和reduce数量】在hive中没有办法直接设置map个数,但是可以通过设置一个map处理的最大数据量,来设置map个数
参数如下:

set mapred.max.split.size=256000000; -- 决定每个map处理的最大的文件大小,单位为B set mapred.min.split.size.per.node=1; -- 节点中可以处理的最小的文件大小 set mapred.min.split.size.per.rack=1; -- 机架中可以处理的最小的文件大小

如何设置reduce个数 reduce个数有两种方式来设置.
  • 方法一 直接设置reduce个数,如下:
set mapred.reduce.tasks=10; -- 设置reduce的数量

  • 方法二设置单个reduce处理的数据量大小
set hive.exec.reducers.bytes.per.reducer=1073741824 -- 每个reduce处理的数据量,默认1GB

    推荐阅读