YARN工作全解

YARN(Yet Another Resource Negotiator)通过分离资源管理和作业调度,解决了MapReduce1中的单点故障和资源管理问题。它以内存为单位表示资源,使用Application Master进行任务分配,实现了更有效的资源调度。Resource Manager负责全局资源分配,NodeManager管理应用实例,Container作为资源隔离单位。客户端提交任务后,ResourceManager分配Container启动Application Master,后者负责任务调度和监控,直到任务完成。
摘要由CSDN通过智能技术生成

首先放张YARN官网的图便于理解:
这里写图片描述
讲一下YARN的优点(网上一搜一箩筐):

首先要提一下MapReduce1,它只包含JobTracker(协调在集群上运行的所有作业)和TaskTracker(运行分配的任务并定期向 JobTracker 报告进度),主要存在这样几个问题:

  • JobTracker容易存在单点故障;
    既要负责资源管理,又要进行作业调度,负担重;当需处理太多任务时,会造成过多的资源消耗。
  • 当mapreduce job非常多的时候,会造成很大的内存开销,在
    TaskTracker端,以mapreduce task的数目作为资源的表示过于简单,没有考虑到cpu以及内存的占用情况,如果两个大内存消耗的task被调度到了一块,很容易出现OutOfMemory异常。
  • 在TaskTracker端,把资源强制划分为map task slot和reduce task slot,无法有效利用资源。

然后才是YARN的主场:

  • YARN的设计减小了JobTracker的资源消耗,并且让监测每一个Job子任务(tasks)状态的程序分布式化了(使用Application Master)。
  • Application Master是一个可变更的部分,可以定制自己的编程模型。
  • 对于资源的表示以内存为
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值