Hadoop系列--Hadoop基本架构之MapReduce架构
2017-08-08 21:02
337 查看
1 MapReduce架构的组件组成
1.1 组件组成
Hadoop的MapReduce架构主要由以下几个组件组成:Client、JobTracker、TaskTracker、Task。1.2 MapReduce架构图
如下图所示。2 各组件详解
1.Client用户编写的MapReduce程序通过Client提交到JobTracker。
2.JobTracker
参照上图。
JobTracker主要负责资源监控和作业调度。
JobTracker监控所有TaskTracker与作业的健康状况;
同时,JobTracker会跟踪任务的执行进度、资源使用量等信息,并将这些信息告诉调度器;
调度器在资源出现空闲时选择合适的任务使用这些资源。另外,在Hadoop中,任务调度器是一个可插拔的模块,用户可以根据自己的需要设计相应的调度器。
3.TaskTracker
参照上图。
TaskTracker1通过Heartbeat将本节点上资源的使用情况和任务的运行进度汇报给JobTracker,2同时接收JobTracker发送过来的命令并执行相应的操作,例如启动或终止任务。
4.Task
参照上图。
Task分为Map Task和Reduce Task两种,均由TaskTracker启动。
3 Map/Reduce执行流程详解
3.1 Map Task执行流程
如下图所示。1.Map Task先将对应的split迭代解析成一个个key/value对;
2.一次调用用户定义的map()函数进行处理;
3.并将临时结果存放到本地磁盘上,其中临时数据被分成若干个partition,每个partition将被一个Reduce Task处理。
3.2 Reduce Task执行流程
如下图所示。1.从远程节点上读取Map Task中间结果,即为”Shuffle阶段”;
2.按照key对key/value对进行排序,即为”Sort阶段”;
3.以此读取key/value,调用用户的reduce()函数处理,并将最终结果存放到HDFS上,即为”Reduce阶段”。
相关文章推荐
- 【Hadoop入门学习系列之四】MapReduce 2.0应用场景和原理、基本架构和编程模型
- 【Hadoop系列第五章】MapReduce2.0应用场景、原理与基本架构
- hadoop学习之路----MapReduce原理与基本架构总结(第三讲)
- 【Hadoop系列第九章】(一)理论:HBase应用场景、原理与基本架构
- Hadoop1.0 MapReduce工作原理 与 Hadoop 2.x Yarn 设计理验与基本架构理解
- Hadoop基本架构之HDFS和MapReduce(上)
- 我是菜鸟:hadoop之mapreduce设计理念和基本架构
- Hadoop系列--Hadoop基本架构之HDFS架构
- [读书笔记]深入解析MapReduce架构设计与实现原理——CH4 Hadoop RPC基本框架
- hadoop学习笔记二_MapReduce应用场景、原理、基本架构
- 【Hadoop系列第六章】HBase应用场景、原理与基本架构
- 【Hadoop入门学习系列之六】HBase基本架构、编程模型和应用案例
- Hadoop系列之三:函数式编程语言和MapReduce
- [Hadoop] MapReduce架构设计
- 【Python学习系列四】Python程序通过hadoop-streaming提交到Hadoop集群执行MapReduce
- 【多维分析系列】大数据下的数据分析:Hadoop架构解析
- 从Hadoop框架与MapReduce模式中谈海量数据处理(淘宝技术架构)
- hadoop入门学习系列之二hadoop的mapreduce的wordcount流程介绍
- Hadoop系列(4):MapReduce实现倒排索引(Inverted Index)
- hadoop初识之mapreduce架构