Advertisement

MapReduce技术对分区、排序、分组进行记录与解决TopN问题

阅读量:

分区

  1. 在MapReduce(MR)中partitioner负责将Mapper生成的中间结果按分区规则分配,并向相应的Reducer发送。
  2. partitioner默认使用哈希分区器(Hashpartitioner),该机制将数据按哈希值分组并发送到不同的reducers进行处理。
  3. 计算公式:(key.hashCode() & Integer.MAX_VALUE) % numReduceTasks
在这里插入图片描述

设计分片策略:
1.基于现有的Partitioner<key, value>进行扩展,
2.采用与mapper输出相同的键值类型,
3.重新编写getPartition方法,
4.最终返回对应的分片ID。

在这里插入图片描述

2.在Driver类中指定partition类
3.在Driver类中指定reducetask个数

![在这里插入图片描述](ht

全部评论 (0)

还没有任何评论哟~