技术原理

Hadoop纱线教程-学习纱线结构的基础知识

Hadoop YARN使用各种处理工具编织了Hadoop的存储单元,即HDFS(Hadoop分布式文件系统)。对于那些完全不熟悉这个主题的人,YARN代表“又一个资源协商者”。我还建议您在继续学习Apache Hadoop YARN之前先阅读我们的Hadoop教程和MapReduce教程。我将在这里解释以下主题,以确保在本博客的结尾,您对Hadoop YARN的理解是清楚的。

为什么是YARN?Hadoop纱线组件简介纱线应用提交在纱线中的应用Hadoop纱线中的工作流为什么是纱线?

在Hadoop version 1.0(也称为MRV1(mapreduceversion1))中,MapReduce同时执行处理和资源管理功能。它由一个工作跟踪器组成,这个跟踪器是唯一的主人。作业跟踪器分配资源、执行调度并监视处理作业。它在许多称为任务跟踪器的次级进程上分配map和reduce任务。任务跟踪器定期向作业跟踪器报告它们的进度。

MapReduce Version 1.0 - Hadoop YARN - Edureka

这种设计由于单个作业跟踪器而导致可伸缩性瓶颈!在一个由5000个节点和40000个任务同时运行的集群中,这种设计达到了实际的极限,除此之外,MRV1的计算资源利用率也很低。此外,Hadoop框架仅限于MapReduce处理范式。

为了克服所有这些问题,Yahoo和Hortonworks于2012年在Hadoop版本2.0中引入了YARN。YARN背后的基本思想是通过接管资源管理和作业调度的职责来减轻MapReduce。YARN开始让Hadoop能够在Hadoop框架中运行非MapReduce作业。

您还可以观看下面的视频,我们的Hadoop认证培训专家正在详细讨论YARN概念和它的架构。

Hadoop YARN教程“;Hadoop YARN architecture”;Edureka

纱线的引入,使Hadoop生态系统彻底变革。它变得更加灵活、高效和可扩展。2013年第一季度Yahoo开始使用YARN时,它帮助该公司将Hadoop集群的规模从40000个节点缩减到32000个节点。但是工作的数量翻了一番,达到了每月2600万个。

介绍Hadoop YARN

既然我已经向您介绍了对YARN的需求,让我向您介绍Hadoop v2.0的核心组件YARN。纱线允许不同的数据处理方法,如图形处理、交互处理、流处理以及批处理来运行和处理存储在HDFS中的数据。因此,YARN向MapReduce以外的其他类型的分布式应用程序开放了Hadoop。

Hadoop v1.0 vs Hadoop v2.0 - Hadoop YARN - Edureka

YARN允许用户根据需要执行操作,除了资源管理外,还可以使用Spark等多种工具进行实时处理,Hive for SQL,HBase for NoSQL等。

,YARN还执行作业调度。YARN通过分配资源和调度任务来执行所有的处理活动。Apache Hadoop YARN体系结构由以下主要组件组成:

资源管理器:在主守护进程上运行并管理集群中的资源分配。节点管理器:它们运行在从属守护进程上,负责在每个数据节点上执行任务。应用程序主控:管理单个应用程序的用户作业生命周期和资源需求。它与节点管理器一起工作,并监视任务的执行。容器:单个节点上的资源包,包括RAM、CPU、网络、HDD等。YARN

的组件可以将YARN视为Hadoop生态系统的大脑。下面的图像代表了纱结构。

Components of YARN - Hadoop YARN - Edureka

YARN体系结构的第一个组件是

资源管理器,它是资源分配的最终权威。在接收到处理请求时,它会相应地将部分请求传递给相应的节点管理器,在那里进行实际的处理。它是集群资源的仲裁器,决定了竞争应用程序可用资源的分配。优化群集利用率,如在各种约束(如容量保证、公平性和sla)下始终保持所有资源的使用。它有两个主要组件:a)调度器b)应用程序管理器

a)调度器

调度器负责根据容量、队列等的限制将资源分配给各种正在运行的应用程序。它在ResourceManager中称为纯调度器,这意味着它不会对应用程序的状态执行任何监视或跟踪。如果存在应用程序故障或硬件故障,则计划程序不保证重新启动失败的任务。根据应用程序的资源需求执行调度。它有一个可插入的策略插件,负责在不同的应用程序之间划分群集资源。有两个插件:容量调度程序和公平调度程序,它们目前在ResourceManager中用作调度程序。”

“b)应用程序管理器”

它负责接受作业提交。从资源管理器协商第一个容器以执行特定于应用程序的应用程序主控形状。管理在群集中运行应用程序主容器,并提供在失败时重新启动应用程序主容器的服务。”第二个组件是:

节点管理器它负责Hadoop集群中的各个节点,并管理给定节点上的用户作业和工作流。它向资源管理器注册并发送带有节点运行状况的心跳信号。它的主要目标是管理资源管理器分配给它的应用程序容器。它与资源管理器保持同步。Application Master通过向节点管理器发送一个容器启动上下文(CLC)来请求分配的容器,该上下文包含应用程序运行所需的所有内容。节点管理器创建请求的容器进程并启动它。监视单个容器的资源使用(内存、CPU)。执行日志管理。它还会按照资源管理器的指示杀死容器。

Apache Hadoop YARN的第三个组件是,

应用程序主应用程序是提交给框架的单个作业。每个这样的应用程序都有一个与之关联的唯一的应用程序主节点,它是一个特定于框架的实体。它是在集群中协调应用程序执行并管理故障的过程。它的任务是从资源管理器协商资源,并与节点管理器一起执行和监视组件任务。它负责与ResourceManager协商合适的资源容器,跟踪其状态并监视进度。一旦启动,它会定期向资源管理器发送心跳信号,以确认其运行状况并更新其资源需求的记录。”第四个组件是:

容器它是一个物理资源的集合,如RAM、CPU核和单个节点上的磁盘。纱线容器由容器启动上下文(即容器生命周期(CLC))管理。此记录包含环境变量、存储在可远程访问存储中的依赖项、安全令牌、节点管理器服务的负载和创建进程所需的命令的映射。它授予应用程序在特定主机上使用特定数量资源(内存、CPU等)的权限。在YARN

中提交应用程序参考图片,并查看Hadoop YARN提交应用程序所涉及的步骤:

1)提交作业

2)获取应用程序应用程序ID

3)应用程序提交上下文

4 a)启动容器启动

b)启动应用程序主机

5)分配资源

6 a)容器

b)启动

7)在Hadoop纱中执行

Application Submission - Hadoop YARN - Edureka

应用程序工作流

请参阅对于给定的映像,请参见Apache Hadoop YARN应用程序工作流中涉及的以下步骤:

客户端提交应用程序资源管理器分配容器以启动应用程序管理器应用程序管理器在资源管理器中注册应用程序管理器从资源管理器请求容器应用程序管理器通知启动容器的节点管理器应用程序代码在容器客户端中执行,联系资源管理器/应用程序管理器以监视应用程序的状态应用程序管理器使用资源管理器

Application Workflow - Hadoop YARN - Edureka

注销,现在您已经知道Apache Hadoop YARN,查看Edureka的Hadoop培训,Edureka是一家值得信赖的在线学习公司,拥有遍布全球的25万名满意的学习者。Edureka大数据Hadoop认证培训课程帮助学习者使用零售、社交媒体、航空、旅游、金融领域的实时用例,成为HDF、纱线、MapReduce、Pig、Hive、HBase、Oozie、Flume和Sqoop方面的专家。

有问题要问我们吗?请在评论部分提到它,我们会给你回复的

你也可能喜欢

发表评论

您的电子邮件地址不会被公开。 必填项已用 * 标注

提示:点击验证后方可评论!

插入图片
人工智能ai培训 投稿者
我还没有学会写个人说明!
最近文章
  • * 没有更多文章了
  • 热门搜索

    分类目录