分布式资源管理器YARN简介(一)

@(Hadoop)

为什么会出现YARN(Yet Another Resource Negotiator, a framework for job scheduling and cluster resource management),YARN的优秀点是什么,践行分布式框架设计和并行化开发时有什么启发。希望这能加深Hadoop理解和算法开发思路扩展,如TensorFlow的多核任务分配机制、分布式任务分配机制等。

所谓资源调度管理器最核心是
1. 管理集群资源,原则上可以包括任何硬件资源,当前YARN管理粒度是CPU和内存——解决物理资源透明化
2. 基于资源情况和任务进行状态,调度任务队列——解决并发任务调度透明化

回顾:基本的MapReduce流程

以MR界的Hello world(WordCount)举例:
这里写图片描述
其他相关知识
- RPC原理和实践
- Master-Slave设计模式

如何完成多个这样有组织性的任务?

没有YARN之前

原 MapReduce 框架图如下:
这里写图片描述
原 MapReduce 的设计思路:
1. 首先用户程序 (JobClient) 提交了一个 job,job 的信息会发送到 Job Tracker 中,Job Tracker 是 Map-reduce 框架的中心,他需要做很多事情。根据如上的MR流程,我们看看他要做哪些事
- 首先,要做任务分配,那就需要知道数据分布在哪里,这意味着要和HDFS Metadata Server通讯
- 其次,要根据数据分布,分配任务给实际机器,这里又基本有两个步骤,先确定有哪些机器是存活的、资源还剩余多少;另外,根据他们和数据的分布关系,做出任务分配策略
- 然后,开始分配任务,要将MapReduce逻辑分发到各台机器上
- 然后,要监控各个机器上Mapper、Reducer实例的任务进度,如果失败要回收资源并重新分配资源,指定数据索引,重新执行
- 更细的可以参考Google MapReduce原论文,再赘述下去也是说明一件事,这个JobTracker要做很多事情。
总结下:他需要与

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值