hadoop2简介 - yarn平台

1 简介:



 



 


 

 

 

yarn架构:

       资源: 运行程序需要的CPU,内存,磁盘,网络

       resourceManager: 资源管理,只要需要资源我就协调,不管需要资源的应用是 mapreduce/storm/spark

       applicationMaster: 应用管理, 只要是应用,不管是mapreduce/strom/spark的应用类型都管理

       applicationMaster类比于JDBC,是一个标准,旗下的具体实现有:

       mapreduceApplicationMaster, StormApplicationMaster, SparkApplicationMaster

       JDBC旗下的具体实现有: ibatis, hibernate

      

maprecue架构:

         简单理解就是由一堆堆的函数组成,管理和调用的是一个个的程序,

         每台机器就是一个独立的操作系统,这台机器做这件事,另一台机器做另一个事,

         机器A做的事和机器B是独门独户的,这样就会存在资源利用不高的问题。

         比如A机器只有mysql服务器,使用频率并不高

这两个架构可以这么联想理解:

         yarn架构是社会主义国家,国家统一支配每个家庭(从节点)的所有资源,能统筹全局,集中力量办大事

         mapreduce架构是资本主义国家,每个家庭关起门来自己做自己的事,彼此隔离隐私。

 hadoop2: 文件存储系统hdfs + 资源管理调度系统yarn + 批处理计算框架mr 组成。

启动程序,常驻内存的是 HDFS YARN 。

mr计算框架只有在运行的时候才有。

hdfs:  获取数据时,类比于人去银行网点取钱,只关注能取到钱,而不关注
       获取的钱是存在哪个地址的银行中

1)为何产生hadoop2, yarn平台内部成员关系介绍

回答:
a) 在hadoop1中,jobtracker的职责主要是资源(slot)管理、应用管理。
  仅仅作为出入证的作用,并不在意进入的资源是大房间(4核 16G内存 CPU主频一般)还是小房间(8核 128G内存 CPU主频更高),是一种比较粗的资源划分
 
b)资源管理: 类比于静态管理,搭建好后,就一直存在着
  应用管理: 类比于动态管理,有起始时间
  这两者管理不是同一层面的东西,不符合Java中职责单一原则
 
c) hadoop1中MapReduce框架依赖磁盘io进行计算的大数据计算的解决方案。优点是可以处理海量数据,缺点是处理速度慢。
   而在现实需求中,有离线批处理的的,有实时的,有迭代式调用的,真实需求较多,hadoop1架构太局限。

d) 基于以上几点,把hadoop1的mapreduce架构拆分出来, 
    资源管理:ResourceManager
 应用管理:跟着应用而生,应用在他在,应用结束他结束,应用可以是多种类型 eg:离线的mapreduce 实时的strom等
 资源管理和应用管理的逻辑总和就是 yarn平台
 
 类比记忆:
 yarn平台: 国家税务局--->公司要来我局里申请挂牌,同时接受我局管理,我局会派工作人员(ApplicationMaster)管理公司(maprecue应用 storm应用等)
 各种应用: 各种类型的公司--->mapreduce storm等
 ResourceManager: 国家税务局领导,负责协调来注册的公司使用我国资源的

 

 
 hadoop各种版本文档地址:

http://hadoop.apache.org/docs/

 hadoop2 yarn 介绍:

a)yarn如何管理节点资源的呢??
b)应用如何提交到yarn上 然后yarn上运行并将结果返回给应用的?

 答案见下图:

 

hdfs和map任务关系:



 

hadoop2生态圈分子:



 

下面是yarn平台结构图




 
 

猜你喜欢

转载自chengjianxiaoxue.iteye.com/blog/2173595