MapReduce简单分析

在Map端
数据从Map中写入环形缓冲区,进行分区,分区时达到80%后溢出写入到磁盘,这几步同步进行


中间有个Shuffle过程


Reduce端

执行完Map 后到Reduce内存中,进行sort和merge,生成溢出文件,很多的溢出文件合并(一次合并10个),Reduce文件读取,然后做处理。


再详细一点:

1InputFormat从HDFS文件系统加载文件,然后将数据集逻辑上切分,切成多个Split
2RecordReader(RR)把分片的文件读取出来,然后输出成K-V的形式,这个结果会作为Map的输入
3Map是用户自己定义的处理逻辑(就是我们写的Map函数),经过4Map处理后会产生很多的K-V对。
5这些键值对交给shuffle处理,shuffle处理的步骤有分区,排序,归并。
6把处理后的结果给Reduce处理
7得到最终的结果,并把结果写入HSFS文件系统中

如下图所示:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值