MapReduce中分区数与ReduceTask个数关系比较

在MapReduce中如果不设置ReduceTask个数时,默认为1;如果我们使用了自定义分区,那么同时也需要在主类中设置ReduceTask个数,此时要注意分区个数与ReduceTask个数之间的不同组合会产生以下不同结果:

  • 当ReduceTask个数(n)>分区个数(m),会产生m个实际输出文件和(n-m)个空白输出文件。
  • 当1
  • 当ReduceTask个数(n)=1时,无论分区个数为几,所有分区结果全部放在同一个输出文件中。
  • 在自定义分区中定义分区编号时,要特别注意,分区编号必须从1开始,并且步长为1。

你可能感兴趣的:(大数据之Hadoop,mapreduce,大数据,hadoop)