码迷,mamicode.com
首页 > 其他好文 > 详细

Hadoop分区与分组

时间:2014-12-12 22:20:47      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:hadoop   分区   分组   复合键   textpair   

下面以《Hadoop权威指南》中的一个例子来解释分区与分组的关系。

对于一般的键,只需要key值相同,则对应的value就会分配至同一个 reduce中;

对于复合键,形式为TextPair<key1,key2>(关于复合键,可参考另一篇关于TextPair的博文http://blog.csdn.net/until_v/article/details/40867973,通过控制 key1来进行分区,则具有相同的 key1的值会被划分至同一个分区中,但此时如果 key2不相同,则不同的key2会被划分至不同的分组。如
bubuko.com,布布扣
:Partition代表分区,Group代表分组;
1900、1901为key1的值;35℃、34℃为key2的值

通过控制任务的分组(job.setGroupingComparatorClass(GroupComparator.class),可以忽略key2的值,使相同的 key1的值划分至同一组,从而使key1相同的数据能够迭代在一个 reduce中。如:
bubuko.com,布布扣

Hadoop分区与分组

标签:hadoop   分区   分组   复合键   textpair   

原文地址:http://blog.csdn.net/until_v/article/details/41898569

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!