用户定制Partitioner

用户定制Partitioner

Partition:完成Map节点数据的中间结果向Reduce节点的分区处理

在MapReduce程序中,Partitioner决定Map节点的输出将被分区到那个Reduce节点上去,MapReduce提供的默认的Partitioner是HashPartitioner
他根据每条数据记录的主键值进行Hash操作,获取一个非负整数的Hash码,然后用当前作业的Reduce数进行取模运算,此时决定记录将被分到哪个Reduce节点上去

定制Partitioner可以继承HashPartitioner,然后重载getPartition()方法,在该方法中用新的主键值进一步调用HashPartitioner的getPartition()
最后还需要在job的配置程序中配置进行如下的Partitioner设置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值