yarn的定义
YARN(Yet Another Resource Negotiator)的定义
YARN是Hadoop 2.0引入的核心组件,全称为 “Yet Another Resource Negotiator”(另一种资源协调者)。它是Hadoop的 资源管理和作业调度系统,负责统一管理集群的计算资源(如CPU、内存),并协调各类计算框架(如MapReduce、Spark、Flink等)的任务执行。
YARN的核心作用
1. 资源统一管理
- 将集群中的资源(CPU、内存等)抽象化,动态分配给不同的应用程序(如MapReduce作业、Spark任务)。
- 取代Hadoop 1.0中MapReduce自身管理资源的模式,实现 **资源管理与计算逻辑的解耦**。
2. 多计算框架支持
- 允许MapReduce、Spark、Tez、Flink等多种计算框架共享同一个集群资源,提高利用率。
3. 任务调度与容错
- 监控任务执行状态,失败时自动重新调度,确保作业完成。
总结:YARN是Hadoop生态的“资源调度大脑”,使得Hadoop从单一的MapReduce演变为支持多样化计算框架的通用大数据平台。