hadoop探究 -- shuffle 和 排序

参考《hadoop权威指南》


什么是shuffle

系统执行排序的过程----将map输出作为输入传给reducer。MR确保每个reducer的输入都是按键排序。shuffle是MR的心脏。

map端

map中数据流动方式:每个map都有一个环形内存缓存区(100M),输出先放在该区,当大于一个阀值(0.8)时再写入磁盘。

在写入磁盘前,线程根据数据要传到的不同reducer把数据分成相应的partition,然后每个分区内先内部排序。还有个combiner对排序后的结果合并。

写磁盘时可以对map的输出进行压缩。

reducer通过http凡是得到输出文件的分区。

具体对应的参数和调优,会在下面给出。


reduce端

reduce先进行复制,然后进行排序(合并)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值