前言

在MapReduce程序中,待处理的数据最开始是放在HDFS上的,这点无异议。

接下来,数据被会被送往一个个Map节点中去,这也无异议。

下面问题来了:数据在被Map节点处理完后,再何去何从呢?

这就是本文探讨的话题。

Shuffle

在Map进行完计算后,将会让数据经过一个名为Shuffle的过程交给Reduce节点;

然后Reduce节点在收到了数据并完成了自己的计算后,会将结果输出到Hdfs。

那么,什么是Shuffle阶段,它具体做什么事情?

需要知道,这可是Hadoop最为核心的所在,也是号称“奇迹出现的地方“  = =#

Shuffle具体分析

首先,给出官方对于Shuffle流程的示意图:

  Shuffle过程植入于Map端和Reduce端两边

1. Map端工作:

a. 分区:根据键值对的Key值,选定键值对所属的Partition区间(与Reduce节点对应)。

b. 排序:对各分区内的键值对根据键进行排序。

c. 分割:Map端的结果先是存放在缓冲区内的,如果超出,自然就要执行分割的处理,将一部分数据发往硬盘。

d. 合并:对于要发送往同一个节点的键值对,我们需要对它进行合并。(这一步很可能针对硬盘,对于海量数据处理,缓冲区溢出是很正常的事情)

2. Reduce端工作:

a. Copy:以HTTP的方式从指定的Map端拉数据,注意是Map端的本地磁盘。

b. 合并:一个Reduce节点有可能从多个Map节点获取数据,获取到之后

c. 排序:对各分区内的键值对根据键进行排序。和Map端操作一样。

小结

对于这部分的内容,以后有机会做Hadoop性能方面的工作时,会继续学习研究。

第十篇:Map/Reduce 工作机制分析 - 数据的流向分析相关推荐

  1. 08_clickhouse主键/索引的工作机制(MergeTree的稀疏索引、索引的生成过程、索引的查询),数据标记的工作机制(数据存储、数据标记、数据查询、数据查询示例)(学习笔记)

    5.主键/索引的工作机制 5.1.MergeTree的稀疏索引 5.2.索引的生成过程 5.3.索引的查询 6.数据标记的工作机制 6.1.数据存储 6.2.数据标记 6.3.数据查询 6.4.数据查 ...

  2. 第十届软件杯(民航大数据在线可视化分析系统)

    信息化与互联网的浪潮正冲击着社会的各个角落,而航空"数据化"越来越被重视,它已经被誉为是新时代的"石油和原材料",成为企业未来发展的新能源与动力.航空领域的发展 ...

  3. 【C++进阶】第二十篇——map和set(map和set的用法+multimap+multiset+map和set代码实现)

    ⭐️今天我要给大家介绍两个新的容器,它们都是关联式容器--map和set,我会先介绍它们的使用方法,然后带大家用上一篇博客中的红黑树封装出map和set. ⭐️博客代码已上传至gitee:https: ...

  4. 大数据之-Hadoop3.x_MapReduce_MapTask工作机制---大数据之hadoop3.x工作笔记0124

    然后我们再来看一下maptask的执行结果每一看到分上面5个阶段我们每个都去看一下 首先可以看到左侧是待处理的数据,ss.txt,如果有200m,然后首先在把这数据submit之前,会根据 参数配置, ...

  5. 大数据之-Hadoop3.x_Yarn_工作机制---大数据之hadoop3.x工作笔记0142

    首先我们的MapReduce程序要提交,整个时候, 比如我们提交了一个wc.jar,那么在这个程序的main方法中,有个 job.waitForCompletion() 这个方法,这个就等待执行完成对 ...

  6. 一切从Android的Handler讲起(一):Handler工作机制

    一切从Android的Handler讲起(一):Handler工作机制   有关Handler原理的相关博文或者书本有很多,包括肥柴本人也写过相关的博文,包括基础原理篇:Android基础知识(九): ...

  7. Hadoop生态圈(十三)- Namenode元数据管理及各组件工作机制

    目录 前言 1. Namenode元数据管理 1.1 元数据是什么 1.2 元数据管理概述 1.2.1 内存元数据 1.2.2 磁盘元数据 1.2.2.1 fsimage内存镜像文件 1.2.2.2 ...

  8. Meta分析和网状Meta分析速成班( 2019年12月28-29日 上海)

    适合对象 零基础的研究生.临床医务人员.医药院校的科研工作者:迫切希望发表SCI文章晋升的临床工作者.本次速成班特别适合初学者和无基础的学员. 课程背景 本培训班以1篇meta分析和网状meta分析为 ...

  9. wps2019数据分析加载项_wps单因素分析数据 wps2019单因素方差分析

    请问wps excel如何进行单因素方差分析? 在"数据"选项下的"分析""分析工具"中,选择"方差分析-单因素方差分析" ...

最新文章

  1. 域控制器安装过程中断电!与Windows Server 2008 林功能级别提升之“冬夜”分享...
  2. Java序列化接口的作用总结1
  3. 读书笔记《Hadoop开源云计算平台》
  4. linux 内核 虚拟文件系统VFS 路径查找 path_lookup
  5. ffmpeg+nginx+video实现rtsp流转hls流,通过H5查看监控视频
  6. 主存和cache每一块相等_笔记:cpu中的cache(一)
  7. 【LOJ6033】棋盘游戏【二分图博弈】
  8. png-CRC32校验
  9. linux导入lifd文件乱码,wget文件名中文乱码
  10. h5海报设计开源工具_5个用于教幼儿阅读的开源工具
  11. Android笔记 - android 类型转化错误
  12. 随想录(ccpp之间的相互调用)
  13. 京东、宅急送的微服务实践分享(下)| 架构师小组交流会
  14. python之函数(function)
  15. Python初学16——程序设计方法学
  16. 记录一下阿里云购买域名遇到的坑
  17. 彻底关闭Windows10自动更新的详细解决方案
  18. 基于拉格朗日差值算法的BMP图像缩放
  19. 彻底弄懂GMT、UTC、时区和夏令时
  20. 零电压开关(ZVS)电路原理与设计(整理)

热门文章

  1. java dispose方法_java-dispose方法
  2. mips linux gcc mingw,gcc
  3. android8.0自适应图标,适配8.0+的自适应图标
  4. SpringSecurity Exceptions
  5. java 正则表达式 Pattern
  6. docker 安装hadoop
  7. select into
  8. javascript window.screen
  9. linux 定时任务 crontab
  10. 1.6 语言模型和序列生成