Hadoop Yarn:新MapReduce框架解析

0 下载量 39 浏览量 更新于2024-08-28 收藏 649KB PDF 举报
"Hadoop新MapReduce框架Yarn详解" Hadoop MapReduce V2,也称为YARN(Yet Another Resource Negotiator),是Hadoop生态系统中针对原MapReduce框架的一次重大改进,旨在解决旧框架在大规模分布式计算环境中的性能瓶颈和扩展性问题。原MapReduce架构在处理大量作业和更大规模集群时暴露出了一些问题,如单点故障、资源管理效率低下以及任务调度不灵活等。 在旧的MapReduce框架中,JobTracker承担了双重职责:作业管理和资源调度。这导致了以下几个主要问题: 1. 单点故障:JobTracker是整个框架的核心,如果它发生故障,整个系统将受到影响,这是明显的单点故障问题。 2. 资源消耗过高:JobTracker既要监控和调度所有作业,还要处理心跳信息,当作业数量增加时,JobTracker的内存开销会急剧上升,增加了系统崩溃的风险。 3. 简单的资源模型:TaskTracker仅以map和reduce任务的数量来分配资源,忽略了CPU和内存的具体需求,可能导致资源分配不合理,甚至引发内存溢出(OOM)。 为了解决这些问题,YARN引入了全新的架构设计: 1. 分离资源管理和作业调度:YARN将JobTracker的功能拆分为两个独立的组件:ResourceManager(RM)和ApplicationMaster(AM)。ResourceManager负责全局资源管理,而ApplicationMaster专注于作业特定的调度和监控。 2. 分布式应用管理:每个作业都有自己的ApplicationMaster,与ResourceManager协商获取资源,然后监控和管理该作业的所有任务,这样避免了单点故障。 3. 动态资源分配:TaskTracker被替换为NodeManager,它们报告可用资源给ResourceManager,ResourceM