首页 > 其他分享 >大数据技术之Hadoop(YARN)

大数据技术之Hadoop(YARN)

时间:2024-08-08 20:24:16浏览次数:9  
标签:调度 ApplicationMaster YARN Hadoop 应用程序 Scheduler 数据 资源

文章目录

「章节总览」
 
      【hadoop组件—HDFS https://blog.csdn.net/weixin_45404884/article/details/140488744】
      【hadoop组件—MapReduce https://blog.csdn.net/weixin_45404884/article/details/140577542】
      【hadoop组件—YARN https://blog.csdn.net/weixin_45404884/article/details/140578055】

一、YARN介绍

Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的Hadoop资源管
理器。

  • YARN是一个通用资源管理系统和调度平台,可为上层应用提供统一的资源管理和调度。
  • 它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。
    请添加图片描述

二、YARN功能说明

  • 资源管理系统:集群的硬件资源,和程序运行相关,比如内存、CPU等。
  • 调度平台:多个程序同时申请计算资源如何分配,调度的规则(算法)。
  • 通用:不仅仅支持MapReduce程序,理论上支持各种计算程序。YARN不关心你干什么,只关心你要资源,在有的情况下给你,用完之后还我。

三、 YARN3大组件

1.ResourceManager(RM)

YARN集群中的主角色,决定系统中所有应用程序之间资源分配的最终权限,即最终仲裁者。

2.NodeManager(NM)

YARN中的从角色,一台机器上一个,负责管理本机器上的计算资源。
根据RM命令,启动Container容器、监视容器的资源使用情况。并且向RM主角色汇报资源使用情况。

3.ApplicationMaster(AM)

用户提交的每个应用程序均包含一个AM。
应用程序内的“老大”,负责程序内部各阶段的资源申请,监督程序的执行情况。

请添加图片描述

四、MR提交YARN交互流程

  • 第1步、用户通过客户端向YARN中ResourceManager提交应用程序(比如hadoop jar提交MR程序);
  • 第2步、ResourceManager为该应用程序分配第一个Container(容器),并与对应的NodeManager通信,要求它在这个Container中启动这个应用程序的ApplicationMaster。
  • 第3步、ApplicationMaster启动成功之后,首先向ResourceManager注册并保持通信,这样用户可以直接通过ResourceManage查看应用程序的运行状态(处理了百分之几);
  • 第4步、AM为本次程序内部的各个Task任务向RM申请资源,并监控它的运行状态。
  • 第5步、一旦 ApplicationMaster 申请到资源后,便与对应的 NodeManager 通信,要求它启动任务。
  • 第6步、NodeManager 为任务设置好运行环境后,将任务启动命令写到一个脚本中,并通过运行该脚本启动任务。
  • 第7步、各个任务通过某个 RPC 协议向 ApplicationMaster 汇报自己的状态和进度,以让 ApplicationMaster 随时掌握各个任务的运行状态,从而可以在任务失败时重新启动任务。在应用程序运行过程中,用户可随时通过RPC 向 ApplicationMaster 查询应用程序的当前运行状态。
  • 第8步、应用程序运行完成后,ApplicationMaster 向 ResourceManager 注销并关闭自己。

请添加图片描述

五、YARN资源调度器Scheduler

RN调度程序的工作是根据一些定义的策略为应用程序分配资源。
在YARN中,负责给应用分配资源的就是Scheduler,它是ResourceManager的核心组件之一。

1.调度器策略

Apache版本YARN默认使用Capacity Scheduler。
如果需要使用其他的调度器,可以在yarn-site.xml中的yarn.resourcemanager.scheduler.class进行配置。

(1)FIFO Scheduler(先进先出调度器)

FIFO Scheduler是一个先进先出的思想,即先提交的应用先运行。
FIFO Scheduler拥有一个控制全局的队列queue,默认queue名称为default,该调度器会获取当前集群上所有的资源信息作用于这个全局的queue。

(2)Capacity Scheduler(容量调度器)

允许多个组织共享整个集群资源。
每个组织可以获得集群的一部分计算能力。
通过为每个组织分配专门的队列,然后再为每个队列分配一定的集群资源。

(3)Fair Scheduler(公平调度器)

所有应用在平均情况下随着时间的流逝可以获得相等的资源份额。
计目标是为所有的应用分配公平的资源(对公平的定义通过参数来设置)。
公平调度可以在多个队列间工作,允许资源共享和抢占。

标签:调度,ApplicationMaster,YARN,Hadoop,应用程序,Scheduler,数据,资源
From: https://blog.csdn.net/weixin_45404884/article/details/140578055

相关文章

  • 【探索数据结构与算法】——深入了解双向链表(图文详解)
    目录一、双向链表的基本概念 ​​​二、双向链表的结构三、双向链表的基本操作实现方法 1.双向链表的初始化2.双向链表的头插3.双向链表的尾插6.查找节点7.在指定位置之前插入节点8.删除指定位置节点9.打印链表数据  10.双向链表销毁四、完整代码实现 LIst.h......
  • 深入理解淘客返利系统中的数据加密与隐私保护策略
    深入理解淘客返利系统中的数据加密与隐私保护策略大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!在现代互联网环境中,数据加密与隐私保护已经成为开发者必须重视的重要问题。本文将深入探讨淘客返利系统中的数据加密与隐私保护策略,并通过Java代......
  • MySQL——数据库的设计、事务、视图
    文章目录数据库的设计1.多表之间的关系2.实现关系3.数据库设计的范式事务1.事务的基本介绍2.事务的四大特征ACID3.事务的隔离级别(了解即可)视图1.什么是视图?2.视图创建及使用方法3.注意事项4.为什么使用视图数据库的设计1.多表之间的关系一对一(了解)如:人和身份证......
  • spring操作数据库
    xml版程序结构配置文件dbUtil-阿帕奇提供操作数据库的插件核心类:QueryRunner.query()查询.update()增删改<dependencies><!--spring--><dependency><groupId>org.springframework</groupId><artifactId>spri......
  • MIMIC IV 3.0数据库安装方法
            MIMICIV3.0在上月已经发布了,那么如何安装这个最新的MIMIC数据库呢?1.MIMICIV3.0数据库变化情况        2024年7月19日,知名医疗数据库MIMIC-IV发布了最新的3.0版本,此次更新为数据库带来了诸多重要改进和新增数据。此次更新最显著的变化是新增了20......
  • 小天与数据分析的不解之缘——8
    目录1.模型准确率的困境2.深入学习业务知识3.数据收集的挑战4.促销活动量化的难题4.1量化促销活动的方法4.2解决促销量化的思路5.结合业务知识进行建模5.1数据收集与整理5.2特征工程5.3模型优化6.结果与反馈7.收获与反思写在最后在深入学习大数据技术之后,小天......
  • FFmpeg存放压缩后的音视频数据的结构体:AVPacket简介
    FFmpeg源码中通过AVPacket存储压缩后的音视频数据。它通常由解复用器(demuxers)输出,然后作为输入传递给解码器,或者从编码器作为输出接收,然后传递给多路复用器(muxers)。对于视频,它通常包含一个压缩帧;对于音频,它可能包含几个压缩帧。编码器允许输出不包含压缩音视频数据、只包含side......
  • Springboot计算机毕业设计高校女生的饮食营养管理系统(程序+源码+数据库+调试部署+开发
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,个人食谱,特殊食谱,饮食类型,运动打卡,饮食登记开题报告内容一、研究背景与意义1.1研究背景随着社会经济的快速发展和人们生活水平的不断提高,人们对健康......
  • Springboot计算机毕业设计高校培养方案管理系统(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表教务处,系部负责人,专业负责人,理论课程,教学安排,课程,教师信息,院系,年级,专业,班级,学生,实践课程开题报告内容一、研究背景与意义研究背景随着教育信息化......
  • 分享一个200年日历的黄道吉日sql数据打包供下载以及推荐一个好用的基于bootstrap的颜
    一、分享一个200年日历的黄道吉日sql数据打包    自己抓取的一套200年(1900-2100)全部日期的黄道吉日数据,分享出来,也在此备份以备以后自己要用。包括每天年月日,干支年,干支月,干支日,星期,阳历,农历,阴历月份,阴历日期,星座,胎神,五行,冲,煞,生肖,吉日,值......