分享

关于shuffle的一个疑问

说明:这不是我想实现什么目的 而是从技术角度 理解hadoop做了什么    以wordcount为例 , key为字符。假设有两个reduce。同时假设输入文件比较大,有多个spill文件。
问题:在一个map中,如果有多个spill file,在merge过程中 hadoop是怎么保证 同一个reduce的数据在一起放着 而且 key有序?

767239B7F54320FD1B922322FE431FE0.png

已有(3)人评论

跳转到指定楼层
mituan2008 发表于 2015-9-14 18:24:43
通过分区函数保证的
比如:男和女分区



通过上面即可
让男的一个reduce
女的一个reduce.

至于是否有序,不一定保证,可以通过二次排序,让他们有顺序

Hadoop mapreduce自定义分区HashPartitioner


新手指导:MapReduce中的分区方法Partitioner
回复

使用道具 举报

mituan2008 发表于 2015-9-14 18:25:37
类似帖子推荐:

关于mapreduce哈希分区
http://www.aboutyun.com/thread-14072-1-1.html



回复

使用道具 举报

jancan 发表于 2015-9-14 20:57:42
研究的挺深的,学习学习
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条