Hadoop 2.0(YARN)框架的优点是什么?

作者: Roger Morrison
创建日期: 18 九月 2021
更新日期: 1 七月 2024
Anonim
08 尚硅谷 Hadoop 入门 Hadoop是什么
视频: 08 尚硅谷 Hadoop 入门 Hadoop是什么

内容


资料来源:Jim Hughes / Dreamstime.com

带走:

YARN是对Hadoop 1.0框架的重大改进。在这里,我们研究了它比其前身具有的一些优势。

自从引入大数据概念以来,它已经经历了多个发展阶段。 Hadoop是在2005年引入的,具有一些初始功能,例如MapReduce处理引擎,该引擎允许在集群中分布大规模数据处理工作负载。 Hadoop本身经历了很多变化,并开发了高级框架和方法。

YARN是Hadoop 2.0的核心组件。它基本上在集群环境中管理资源。 YARN代理与计算资源进行交互(代表应用程序),并根据不同的过滤条件将资源分配给每个应用程序。

在本文中,我们将探讨YARN相对于Hadoop 1.0的最大优势。

什么是YARN框架?

ÿ一种her [R资源 ñegotiator是Hadoop 2.0的核心组件,它在集群环境中管理资源。 Hadoop YARN框架是Hadoop 1.0的高级版本,可提供更高的性能,这对于Hadoop生态系统以及与之相关的整个技术领域都是有益的。现在,我们对YARN有了更多的了解,让我们仔细看看Hadoop 1.0和YARN。

Hadoop 1.0框架的局限性

为了了解YARN框架的优势,了解Hadoop 1.0的工作原理以及该框架的局限性非常重要。

这就是JobTracker角色的所在。它既管理集群资源,又确定MapReduce作业的执行。简而言之,JobTracker计划和保留任务槽,并配置和监视每个正在运行的任务。如果任务失败,它将为任务重新分配新的插槽。任务完成后,JobTracker释放用于其他任务的插槽并清理临时资源。

上述方法的主要缺点:

  • 可用性– JobTracker是Hadoop 1.0中的唯一可用性点。这意味着,如果JobTracker失败,则默认情况下所有任务将重新启动。
  • 有限的可扩展性–由于JobTracker执行多个任务并在一台计算机上运行,​​因此未使用其他可用的计算机;因此,导致可扩展性受到限制。
  • 资源利用率–在上述方法中,预定义了映射槽和减少槽。一个插槽可能已满,而其他计算机插槽却是空的。由于保留了空插槽,因此它们将处于空闲状态,而不会损害完整的插槽。这可能会导致资源利用问题。
  • 运行非MapReduce应用程序– JobTracker是为MapReduce框架构建的应用程序。当非MapReduce应用程序尝试在此框架中运行时,会出现问题。该应用程序需要符合MapReduce框架编程才能成功运行。由于此而面临的一些常见问题包括:
    • 即席查询
    • 实时分析
    • 通过方法
  • 级联失败–节点数大于4000时,此框架中的主要问题之一就会发生。在这种情况下,会发生级联失败,从而导致整个集群的性能下降。

这些是使用此框架时面临的一些主要限制。还有一些其他小的限制,未提及。引入YARN框架是为了克服这些限制。


没有错误,没有压力-在不破坏生活的情况下创建可改变生活的软件的分步指南

当没有人关心软件质量时,您就无法提高编程技能。

YARN框架及其优势

Hadoop 2.0中引入的YARN框架旨在分担MapReduce的职责,并负责集群管理任务。这样,MapReduce只能执行数据处理,因此可以简化流程。

YARN引入了中央资源管理的概念。这允许多个应用程序在Hadoop上运行,共享一个公共资源管理。

YARN框架的一些主要组件是:

  • ResourceManager – ResourceManager组件是集群中该集群中所有资源的谈判者。此外,该组件被分类为负责管理用户作业的应用程序管理器。从Hadoop 2.0开始,任何MapReduce作业都将被视为应用程序。
  • ApplicationMaster –该组件是作业或应用程序所在的位置。它还管理所有MapReduce作业,并在作业处理完成后结束。
  • NodeManager –节点管理器组件充当作业历史记录的服务器。它负责保护已完成作业的信息。它还跟踪用户的工作以及他们在特定节点上的工作流程。

请记住,YARN框架具有不同的组件来管理不同的任务,让我们看看它如何应对Hadoop 1.0的局限性。

  • 更好地利用资源– YARN框架没有固定的任务插槽。它提供了一个中央资源管理器,使您可以通过一个公共资源共享多个应用程序。
  • 运行非MapReduce应用程序–在YARN中,调度和资源管理功能与数据处理组件分离。这使Hadoop可以运行不符合Hadoop框架编程的各种类型的应用程序。 Hadoop集群现在能够运行独立的交互式查询并执行更好的实时分析。
  • 向后兼容– YARN是一个向后兼容框架,这意味着MapReduce的任何现有作业都可以在Hadoop 2.0中执行。
  • JobTracker不再存在– JobTracker的两个主要角色是资源管理和作业计划。通过引入YARN框架,现在将它们分为两个单独的组件,即:
    • 节点管理器
    • 资源管理器

结论

YARN框架的引入使为Hadoop开发人员构建应用程序变得更加容易。现在,不再需要使用第三方工具来实现应用程序。 YARN是一个巨大的变化,它将使用户可以考虑使用Hadoop 2.0创建应用程序并更有效地处理数据。随着时间的流逝,将会有进一步的发展来增强Hadoop的可用性。目前,YARN框架将在解决现有问题和创建无忧的环境中发挥关键作用,该环境比早期版本的MapReduce模型更具通用性。