Shuffle流程————大数据分析学习笔记6

本文详细介绍了MapReduce的Shuffle流程,包括环形缓冲区、排序、溢出、归并和拷贝等步骤。在Map阶段,数据经过分区和排序后,通过多路归并算法生成spill文件。如果设置了Combiner,会在写入磁盘前进行预处理。最后,数据被复制到Reduce端进行归并排序,形成最终的输入文件。
摘要由CSDN通过智能技术生成

在这里插入图片描述
上图来自hadoop权威指南,但是看起来还是比较复杂的。总结起来(缓冲,排序,合并,拷贝,归并排序)
我们知道,mapreduce计算框架会将一个任务分割成若干个map,在reduce端进行合并输出,(一般情况,并不完全准确)从map端输出到输入到reduce端中这一系列动作称为shuffle流程。
(1)环形缓冲区
每个map任务产生输出时,都有一个环形缓冲区用于存储任务输出
阈值为80%(即100MB*0.8)这都是可以修改的
100M
当达到阈值后,后台线程开始把内容溢出到磁盘(spill),每次达到阈值,都会新建一个spill file,map继续将数据写入环形缓冲区,如果缓冲区被写满,map会被阻塞
(2)写过程(spill)

一,

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值