Hadoop MapReduce 2.x 工作原理
Posted @SmartSi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hadoop MapReduce 2.x 工作原理相关的知识,希望对你有一定的参考价值。
1. 概述
对于节点数超出 4000 的大型集群,MapReduce 1 的系统开始面领着扩展性的瓶颈。在 2010 年雅虎的一个团队开始设计下一代 MapReduce。由此,YARN(Yet Another Resource Negotiator)应运而生。
YARN 将 Jobtracker 的职能划分为多个独立的实体,从而改善了经典的 MapReduce 面临的扩展瓶颈问题。Jobtracker 负责作业调度和任务进度监视、追踪任务、重启失败或过慢的任务和进行任务登记,例如维护计数器总数。
YARN 将这两种角色划分为两个独立的守护进程:管理集群上资源使用的资源管理器 ResourceManager 和管理集群上运行任务生命周期的应用管理器 ApplicationMaster。基本思路是:应用服务器与资源管理器协商集群的计算资源:容器(每个容器都有特定的内存上限),在这些容器上运行特定应用程序的进程。容器由集群节点上运行的节点管理器(NodeManager)监视,以确保应用程序使用的资源不会超过分配给它的资源。
与 Jobtracker 不同,应用的每个实例(这里指一个 MapReduce 作业)有一个专用的 ApplicationMaster,它运行在应用的运行期间。这种方式实际上和最初的 Google 的 MapReduce 论文里介绍的方法很相似,该论文描述了 master 进程如何协调在一组 worker 上运行的 map 任务和 reduce 任务。
如前所述,YARN 比 MapReduce 更具一般性,实际上 MapReduce 只是 YARN 应用的一种形式。有很多其他的 YAR
以上是关于Hadoop MapReduce 2.x 工作原理的主要内容,如果未能解决你的问题,请参考以下文章