Hadoop总结篇之二--yarn的概况
在弄清楚yarn是什么之前,先来看一下MRv1。
它的由编程模型+数据处理引擎(map/reduceTask)+运行时环境组成(JobTracker/TaskTracker)。其中JobTracker存在很多问题,如下:
1、JobTracker本身承担了调度和计算的任务,太累了
2、JobTracker是单点的,不好扩展不能支持其他计算框架,还有单点故障风险
3、资源是以槽位的方式来调度。粗粒度,不合理。比如提交了一个特别占用资源的任务,整个节点就被占用了。还有map阶段往往reduce槽位就是闲置,反之也是这样。
针对以上问题,MRv2做了以下优化:
1、拆分为资源调度和作业管理两个独立的服务。
2、可以部署集群,可以在yarn上运行其他框架(比如内存计算、流式计算)
3、资源的管理方式是Container,他是一组硬件资源(内存、cpu)等的集合。控制的更细粒度。
这样,新版MRv2,的组成为:编程模型+数据处理引擎(map/reduceTask)+运行时环境组成(yarn),前两者基本实现原理不变。
yarn的概念呼之欲出:
YARN 是Hadoop 2.0 中的资源管理系统,它是一个通用的资源管理模块,可为各类应
用程序进行资源管理和调度。
1、管理系统资源(ResourceManager)
2、管理作业(监控、容错)(ApplicationMaster)
YARN 不仅限于MapReduce 一种框架使用,也可以供其他框架使用。
yarn都包含哪些基本模块呢?
1、ResourceManager(RM) 全局资源管理器。负责资源的管理和分配。
2、ApplicationMaster(AM)应用程序主管,每一个作业对应一个。协调资源,分配任务,与NM通信启动任务,监控任务等。
3、NodeManager(NM)各个节点上的资源管理器。它有两个作用,监控本机资源使用情况汇报到RM;接收来自AM的Container启动/停止等指令
4、Container逻辑意义上的资源隔离机制。
其中,RM有两个主要组成模块:
1、Scheduler调度器
2、ApplicationManager应用程序管理器,作用是接收作业->向Scheduler请求资源(Container)分配给AM->启动AM->监控AM->容错AM。
学习yarn,主要应该从以下几个类入手:
Job,ResourceManager,NodeManager,MRAPPMaster,YarnClient,MapTask,ReduceTask
其中ResourceManager,NodeManager,MRAPPMaster是类似的实现机制。都是服务模型,都是事件监听机制。如下图:

本篇主要介绍了yarn的组成模块,下一篇将从代码级别分析一个job提交过程。
Hadoop总结篇之二--yarn的概况的更多相关文章
- Apache Hadoop 2.9.2 的YARN High Available 模式部署
		
Apache Hadoop 2.9.2 的YARN High Available 模式部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.环境准备 1>.官方文档(htt ...
 - Hadoop总结篇之一------开篇
		
从今天开始新的系列:Hadoop总结篇 之前的hadoop学习篇由于是学习过程中随手记下来的一些内容,不具有系统性.所以在这个系列中,将凭着这段时间的研究心得,来记录一些自认为比较重要的东西. 本系列 ...
 - Java提高篇(三二)-----List总结
		
前面LZ已经充分介绍了有关于List接口的大部分知识,如ArrayList.LinkedList.Vector.Stack,通过这几个知识点可以对List接口有了比较深的了解了.只有通过归纳总结的知识 ...
 - java提高篇(二九)-----Vector
		
在java提高篇(二一)-–ArrayList.java提高篇(二二)-LinkedList,详细讲解了ArrayList.linkedList的原理和实现过程,对于List接口这里还介绍一个它的实现 ...
 - Java提高篇(二六)-----hashCode
		
在前面三篇博文中LZ讲解了(HashMap.HashSet.HashTable),在其中LZ不断地讲解他们的put和get方法,在这两个方法中计算key的hashCode应该是最重要也是最 ...
 - Hadoop阅读笔记(二)——利用MapReduce求平均数和去重
		
前言:圣诞节来了,我怎么能虚度光阴呢?!依稀记得,那一年,大家互赠贺卡,短短几行字,字字融化在心里:那一年,大家在水果市场,寻找那些最能代表自己心意的苹果香蕉梨,摸着冰冷的水果外皮,内心早已滚烫.这一 ...
 - iOS开发Swift篇—(二)变量和常量
		
iOS开发Swift篇—(二)变量和常量 一.语言的性能 (1)根据WWDC的展示 在进行复杂对象排序时Objective-C的性能是Python的2.8倍,Swift的性能是Python的3.9倍 ...
 - 【重走Android之路】【路线篇(二)】知识点归纳
		
[重走Android之路][路线篇(二)]知识点归纳 参考:http://blog.csdn.net/xujing81/article/details/7313507 第一阶段:Java面向对 ...
 - java提高篇(二二)-----LinkedList
		
摘自http://blog.csdn.net/chenssy/article/details/18099417 java提高篇(二二)-----LinkedList 一.概述 LinkedList与 ...
 
随机推荐
- Java的CLASSPATH,趁还没忘赶紧写点
			
咳咳,睡眠不足加上年龄增长,真的赶脚记忆力不行啦. 接触Java以来,对于环境配置就是按照网上的教程,一路复制粘贴,也没啥想法; 最近决定啃啃ThinkInJava,没看两章就看到这CLASSPATH ...
 - 爆破一个二元函数加密的cm
			
系统 : Windows xp 程序 : cztria~1 程序下载地址 :http://pan.baidu.com/s/1slUwmVr 要求 : 爆破 使用工具 : OD 可在看雪论坛中查找关于此 ...
 - 机器学习之分类器性能指标之ROC曲线、AUC值
			
分类器性能指标之ROC曲线.AUC值 一 roc曲线 1.roc曲线:接收者操作特征(receiveroperating characteristic),roc曲线上每个点反映着对同一信号刺激的感受性 ...
 - C# 类:类型  , 数学:类型
			
类(类型): //.Length:获取字符串的长度,返回int型 //.Trim去除字符串前后的空格 / ...
 - Azure Media Service
			
该视频来源于Build 2015, 视频比较老, 从演讲的角度看, 是个非常不错的演讲, 内容也很全面. Apr 27, 2015
 - 第三个Sprint冲刺第八天
			
讨论地点:宿舍 讨论成员:邵家文.李新.朱浩龙.陈俊金 讨论问题:做最后的工作
 - Apache2 同源策略解决方案 - 配置 CORS
			
什么是同源策略 现在的浏览器大多配有同源策略(Same-Origin Policy),具体表现如下: 浏览某一网站,例如 http://www.decembercafe.org/.这个网页中的 Aja ...
 - iOS后台挂起程序 当程序到后台后,继续完成Long-Running Task 任务
			
我们知道,到我们程序从前台退到后台(安home)键后,将执行程序的委托方法. // 当应用程序掉到后台时,执行该方法 - (void)applicationDidEnterBackground:(UI ...
 - The Docker学习记录[Doing]
			
微服务 & Docker 译文:使用Java构建微服务 原文:Building Microservices With Java [编者的话]本文翻译自Dzone Guide to the Ja ...
 - AOP 手动,半自动,全自动
			
dao层 package com.yaorange.dao; public interface StudentDao { public void saveStudent(); public void ...