Hadoop 之 Shuffle

原创 2015年07月08日 23:24:21

1.每个map有一个环形内存缓冲区,用于存储任务的输出。默认大小100MB(io.sort.mb属性),一旦达到阀值0.8(io.sort.spill.percent),一个后台线程把内容写到(spill)磁盘的指定目录(mapred.local.dir)下的新建的一个溢出写文件。
2.写磁盘前,要partition,sort。如果有combiner,combine排序后数据。
3.等最后记录写完,合并全部溢出写文件为一个分区且排序的文件。


1.Reducer通过Http方式得到输出文件的分区。
2.TaskTracker为分区文件运行Reduce任务。复制阶段把Map输出复制到Reducer的内存或磁盘。一个Map任务完成,Reduce就开始复制输出。
3.排序阶段合并map输出。然后走Reduce阶段。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Hadoop-Shuffle过程

一、回顾Reduce阶段三大步凑   在第四篇博文《初识MapReduce》中,我们认识了MapReduce的八大步凑,其中在Reduce阶段总共三个步凑,如下图所示:   其中,...
  • clerk0324
  • clerk0324
  • 2016年09月07日 16:54
  • 1179

hadoop中shuffle详解(mapreduce)

这张是官方对Shuffle过程的描述。但我可以肯定的是,单从这张图你基本不可能明白Shuffle的过程,因为它与事实相差挺多,细节也是错乱的。后面我会具体描述Shuffle的事实情况,所以这里你只要清...
  • suibianshen2012
  • suibianshen2012
  • 2015年09月02日 18:00
  • 1618

Hadoop Shuffle运行原理

Shufflehadoop的核心思想是MapReduce,而MapReduce的核心思想又是Shuffle。shuffle的主要工作是从Map结束到Reduce开始之间的过程,所以了解shuffle的...
  • StromCruise
  • StromCruise
  • 2017年05月17日 11:50
  • 331

Hadoop 之 Shuffle 和排序---再理解

其实在我的一篇博文中,已经对Shuffle有了自己的总结,但是,回过头来再看的时候,觉得又可以再深层次的理解和记忆跟细节的东西。有必要再进行一次知识的输出—不知道在哪里看到的一句话,知识的输出是更残忍...
  • andrewgb
  • andrewgb
  • 2016年01月26日 20:30
  • 973

Hadoop中Map端shuffle过程及源码解析

分析的源码是基于Hadoop2.6.0。 官网上面的MapReduce过程 Map端shuffle的过程: 在执行每个map task时,无论map方法中执行什么逻辑,最终都是要把输出写...
  • u010143774
  • u010143774
  • 2016年05月20日 13:18
  • 20704

hadoop的shuffle和排序

1.1 MapTask运行内部原理 当map task开始运算,并产生中间数据时,其产生的中间结果并非直接就简单的写入磁盘。这中间的过程比较复杂,并且利用到了内存buffer来进行已经产生的部分...
  • llcode
  • llcode
  • 2014年01月17日 22:32
  • 687

Hadoop笔记之shuffle工作流程图及其原理分析

Map函数开始产生输出时,并不是简单地将数据写到本地磁盘,这个过程很复杂,他利用缓冲的方式写到内存,并出于效率的考虑进行与排序...
  • xiaoshunzi111
  • xiaoshunzi111
  • 2015年09月15日 14:02
  • 706

Hadoop 之 Shuffle and Sort

Mapreduce 确保每个reducer的input都是按照key 排序的。系统将 map ouputs 变成 reduce inputs输入的过程被称为 shuffle。shuffle是Mapre...
  • GG584741
  • GG584741
  • 2016年05月31日 17:20
  • 1270

Hadoop的优化(Shuffle过程)

1. Shuffle过程(以wordcount为例)Shuffle过程:即洗牌或弄乱   Collections.shuffle(List):随机打乱参数list里面的元素顺序。   MaoRed...
  • Gerry199102
  • Gerry199102
  • 2016年07月21日 20:20
  • 444

Hadoop 学习研究(四):MapReduce shuffle过程剖详解及参数配置调优

MapReduce简介    在Hadoop  MapReduce中,框架会确保reduce收到的输入数据是根据key排序过的。数据从Mapper输出到Reducer接收,是一个很复杂的过程,框架...
  • u012151684
  • u012151684
  • 2017年05月20日 22:43
  • 454
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Hadoop 之 Shuffle
举报原因:
原因补充:

(最多只允许输入30个字)