首页 > 技术文章 > mapreduce分区

nacyswiss 2020-03-27 20:06 原文

MapReduce当中的分区:相同key的数据发送到同一个reduce当中去
物以类聚,人以群分。
分区就是把同一类的数据,划分到一个地方去,划分到同一个reduce当中去
直达的火车,上面坐的人都是去同一个地方的
默认使用的是HashPartitioner 这个类来对我们的数据进行分区,实现将相同的数据,发送到同一个reduce当中去
使用的算法:使用k2 取hashCode值,然后对reduceTask的个数进行取模

 

 

 

如果是自定义分区要点:

1、不能在本地跑,只能打成jar包在linux上执行

2、要设置ReduceTask的个数

   例如设置两个ReduceTask的个数:

  job.setReduceTasks(2)

3、分区是分文件,不是分文件夹。如果要分文件夹必须自定义outputformat

推荐阅读