
Hadoop2.0中的YARN:集群资源调度框架解析
下载需积分: 9 | 662KB |
更新于2024-08-05
| 174 浏览量 | 举报
收藏
"Hadoop-Yarn是一个重要的分布式集群资源调度框架,是Hadoop 2.x的核心组件,用于管理和分配集群资源。YARN旨在解决Hadoop 1.x中JobTracker职责过重的问题,提高集群资源利用率,并支持多种计算框架如MapReduce、Spark、Hive等在同一平台上运行。"
在Hadoop 1.x版本中,MapReduce是主要的分布式计算框架。JobTracker是系统的核心,负责接收并分配计算任务,同时跟踪监控TaskTracker的任务执行状态。TaskTracker则执行由JobTracker分配的任务。然而,这种设计存在几个显著问题:
1. **JobTracker职责过重**:JobTracker既要管理资源分配,又要监控任务执行,这导致了单点性能瓶颈和资源浪费。
2. **资源利用率低**:由于JobTracker的限制,实时任务和批处理任务需要在不同的集群环境中运行,无法充分利用集群资源。
3. **不适用于多计算框架**:Hadoop 1.x仅专注于MapReduce,不便于其他计算模型如Spark或Hive的集成。
为了解决这些问题,Hadoop 2.x引入了YARN(Yet Another Resource Negotiator)。YARN将JobTracker的功能拆分为两个独立的服务:
- **Resource Manager (RM)**:全局资源管理器,负责整个集群的资源管理和分配,它接受应用程序的申请,决定哪个应用程序可以使用多少资源,并将资源分配给各个应用程序的AppMaster。
- **Application Master (AM)**:每个应用程序特有的AppMaster,负责与RM协商获取资源,以及监控和管理应用程序内部的任务。
YARN的这种设计使得资源管理与任务执行分离,提高了系统的可扩展性和资源利用率。此外,它支持运行多种计算框架,因为每个框架可以有自己的AppMaster来协调其任务执行,无需关心底层的资源调度细节。
在YARN架构中,当用户提交一个应用程序,RM会启动一个容器来运行该应用程序的AM。AM与RM交互以获取执行任务所需的资源,然后AM根据任务需求进一步向RM申请容器,并监控这些容器的状态。Container是YARN中的基本资源单位,包含CPU、内存等资源,可以用来运行任务。
总结来说,Hadoop YARN是Hadoop生态系统的关键组成部分,它通过将资源管理和任务执行分离,提升了系统的效率和灵活性,支持了多样化的计算框架,优化了集群资源利用率,是大数据处理领域的一个重要进步。
相关推荐










lune_Lucky
- 粉丝: 4705
最新资源
- S2SH框架下每3秒自动刷新分页显示数据库数据
- SSM框架整合教程及分页功能实现实例
- HTML5学习资源:精选源码文件分享
- SSH框架实现图片上传与即时显示功能
- 云南大学数据结构实验八:锦标赛程序设计
- 轻松安装MySql 5.1数据库的小巧安装包
- 《bochs虚拟机简易教程》详解从实模式到保护模式
- 自制Android小游戏 'Fight Bees' 简单易懂
- Struts1.2实现Excel表格导出的完美解决方案
- 在线3D试衣软件:虚拟试穿体验新时尚
- Java Swing操作系统模拟软件教程
- 米老鼠注册表清理器:强大功能,简便操作
- VC++网络通信编程精选案例解析
- Telerik RadControls for Windows 8 XAML 2013 Q2版本发布
- C# Winform记事本开发教程与常用控件应用
- 3D建模教程:刺猬模型使用与学习
- WPF Viblend银色主题:完整基础控件样式
- 小三保护神源码解析:Android客户端开发技巧
- 利用OpenGL技术打造交互式3D金字塔模型
- AS_SSD工具:专业固态硬盘速度测试软件
- 迅雷xv格式转flv工具:xv2flv快速无损转换
- JSP项目开发实战:全程代码记录与解析
- QQ业务在线充值流程及工具使用指南
- Apache2.2.6兼容的SVN版本控制工具下载