Hadoop为什么会有Yarn?

Hadoop为什么会有Yarn

Hadoop2.x较Hadoop1.x来说,变化非常大,主要主要体现在Hadoop2.x引入了“Yarn”这个核心部件。

hadoop1.x有两大部件,HDFS和MadpReduce,其中HDFS(Hadoop Distributed Files System)用于分布式存储文件,由一个NameNode和多个DateNode组成,便于集群中各机器从上面读取和写入文件(数据),MadpReduce由一个JobTracker和多个TaskTracker组成,两个核心任务,Map负责对数据块的分片,Reduce对Map进程出来的结果进行聚合,排序,写入到HDFS中。从上图中,对于hadoo1.x来说,HDFS和MapReduce是两个相互依赖的关系,而对于hadoop2.x,在HDFS和MapReduce之间增加了Yarn部件,这个暂且可以理解为是一个“管理平台”,MapReduce就变成了一个可插拔的“插件”,它不仅仅允许hadoo自身的部件使用,还允许其他的数据处理插件接入到hadoop的生态上,如spark。
为什么要引入yarn呢?

首先,简单了解hadoop1.x的MapReduce工作原理:

为了更好的理解,我们就需要跟hadoop1.x比较:

为何要使用yarn。

我们看到JobTracker的功能被分散到各个进程中包括ResourceManager和NodeManager:

比如监控功能,分给了NodeManager,和Application Master。

ResourceManager里面又分为了两个组件:调度器及应用程序管理器。

也就是说Yarn重构后,JobTracker的功能,被分散到了各个进程中。同时由于这些进程可以被单独部署所以这样就大大减轻了单点故障,及压力。

同时我们还看到Yarn使用了Container,而hadoop1.x中使用了slot。slot存在的缺点比如只能map或则reduce用。Container则不存在这个问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值