MapReduce1.0 VS Yarn
来源:互联网 发布:mac怎么添加书签 编辑:程序博客网 时间:2024/05/03 06:53
简答来说,经典的MapReduce中主要有两个角色JobTracker和TaskTracker,
JobTracker负责作业调度和任务进度监督,追踪任务,任务登记等。
TaskTracker运行作业划分后的任务,且对map任务和reduce任务,都有固定数量的任务槽。
下面是MapReduce的数据流和控制流图示:
yarn将JobTracker中两种角色分为两个独立的守护进程:
管理集群上资源使用的资源管理器(Resource Manager)
管理上任务运行生命周期的应用管理器(Application Master)
yarn中不区分map slot和reduce slot,使用资源池。
下面是yarn框架的简单图示:
YARN 分层结构的本质是 ResourceManager。这个实体控制整个集群并管理应用程序向基础计算资源的分配。ResourceManager 将各个资源部分(计算、内存、带宽等)安排给基础NodeManager(YARN的每节点代理)。ResourceManager 还与 ApplicationMaster一起分配资源,NodeManager一起启动和监视它们的基础应用程序。ApplicationMaster 承担了以前的 TaskTracker 的一些角色,ResourceManager 承担了 JobTracker 的角色。
ApplicationMaster 管理一个在 YARN 内运行的应用程序的每个实例。ApplicationMaster 负责协调来自 ResourceManager 的资源,并通过 NodeManager监视容器的执行和资源使用(CPU、内存等的资源分配)。
NodeManager 管理一个 YARN 集群中的每个节点。MRv1 通过插槽管理 Map 和 Reduce 任务的执行,而 NodeManager 管理抽象容器,这些容器代表着可供一个特定应用程序使用的针对每个节点的资源。 负责启动application启动所需的container。NodeManager和ResourceManager共同组成整个数据计算框架。
下面是yarn运行的简单图示:
要使用一个 YARN 集群,首先需要来自包含一个应用程序的客户的请求。ResourceManager协商一个容器的必要资源,启动一个 ApplicationMaster来表示已提交的应用程序。通过使用一个资源请求协议,ApplicationMaster 协商每个节点上供应用程序使用的资源容器。执行应用程序时,ApplicationMaster监视容器直到完成。当应用程序完成时,ApplicationMaster 从 ResourceManager 注销其容器,执行周期就完成了。
参考:《Hadoop权威指南》《Hadoop实战》
- MapReduce1.0 VS Yarn
- MapReduce1和YARN(MapReduce2)运行机制
- MapReduce1和Yarn的工作机制
- MapReduce1.0和MapReduce2.0
- yarn vs npm
- MapReduce 1 VS YARN
- Apache Hadoop 2.2.0MapReduce1.x向2.x迁徙
- COPY mapreduce1
- Hadoop JobTraker TaskTracker vs. yarn
- Spark的资源管理以及YARN-Cluster Vs YARN-Client
- 随手记点-mapreduce1
- MapReduce1的工作原理
- MapReduce2.0(Yarn)
- Yarn 2.2.0安装
- yarn结构-2.9.0
- YARN
- yarn
- yarn
- A 异 形 卵
- cookie与session会话
- linux配置php开发环境
- 设计模式(二)-简单工厂(Simple Factory)模式
- Qt软件开发文档9---封装类调用
- MapReduce1.0 VS Yarn
- 输出斐波那契数列的第n项
- 页面点击其他地方时进行某些操作
- Java并发编程系列之五:AQS
- 基于OGRE的B超实现
- Redis分布式锁----乐观锁的实现,以秒杀系统为例
- 进步与成就感——使用技巧
- 天
- ZZULIOJ 2134: 维克兹的进制转换 By Assassin