yarn 的基本介绍和产生背景
YARN 是 Hadoop2 引入的通用的资源管理和任务调度的平台,可以在 YARN 上运行 MapReduce、Tez、Spark 等多种计算框架,只要计算框架实现了 YARN 所定义的接口,都可以运行在这套通用的 Hadoop 资源管理和任务调度平台上。
Hadoop 1.0 是由 HDFS 和 MapReduce V1 组成的,YARN 出现之前是 MapReduce V1 来负责资源管理和任务调度,MapReduce V1 由 JobTracker 和 TaskTracker 两部分组成。
MapReduce V1 有如下缺点
扩展性差
在 MapReduce V1 中,JobTracker 同时负责资源管理和任务调度,而 JobTracker 只有一个节点,所以 JobTracker 成为了制约系统性能的一个瓶颈,制约了 Hadoop 平台的扩展性。
可靠性低
MapReduce V1 中 JobTracker 存在单点故障问题,所以可靠性低。
资源利用率低
MapReduce V1 采用了基于槽位的资源分配模型,槽位是一种粗粒度的资源划分单位。
不支持多种计算框架
MapReduce V1 这种资源管理和任务调度方式只适合 MapReduce 这种计算框架,而 MapReduce 这种离线计算框架很多时候不能满足应用需求
yarn 的优点:
支持多种计算框架
YARN 是通用的资源管理和任务调度平台,只要实现了 YARN 的接口的计算框架都可以运行在 YARN 上
资源利用率高
多种计算框架可以共用一套集群资源,让资源充分利用起来,提高了利用率。
运维成本低
避免一个框架一个集群的模式,YARN 降低了集群的运维成本。
数据可共享 :
共享集群模式可以让多种框架共享数据和硬件资源,减少数据移动带来的成本
版权声明: 本文为 InfoQ 作者【大数据技术指南】的原创文章。
原文链接:【http://xie.infoq.cn/article/58858e409f854c7b98818285a】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论