大数据开发面试题【Yarn篇】

45、介绍yarn

是一个集群资源管理器,主要由两个组件:RM和NM

RM:负责整个集群的资源管理和调度,接收来自客户端程序提交的请求,根据资源进行分配,也负责监控集群中的资源使用情况

NM:每个节点上运行运行一个NM,负责管理该节点上的资源,接收来自RM的指令,分配或者释放资源

46、yarn工作流程

1、用户通过客户端向RM提交应用程序

2、RM根据可用资源和调度策略,为应用程序分配所需的资源

3、每个节点上的NM接收来自RM的任务分配,并在该节点上启动和管理任务的执行

4、RM和NM定期报告资源使用清除那个和任务状态

46、YARN有几个模块

1、RM

2、NM

3、ApplicationMaster:每个应用程序都有一个ApplicationMaster,是应用程序内部主管,与RM通信,协调应用程序的资源请求和任务执行,

4、Container:封装了资源的概念,是yarn中任务运行的基本单位,RM将资源分配给应用程序管理器,会创建容器来运行应用程序的任务

补充:yarn资源调度机制

Hadoop的作业调度器有三种:FIFO、Capacity Scheduler和Fair Scheduler

1、FIFO

整个集群提交的作业都是用一个队列来进行服务,根据提交作业的顺序来运行,先来先服务

2、容量调度器

将整个集群的资源分为队列,每个队列之间的资源互不干扰,可分为生产和开发环境,且可以在每一个对队列里面使用FIFO调度策略

3、Fair Scheduler(资源调度器)

支持多个队列,每个队列配置一定的资源,每个队列中的job任务公平共享所在队列的所有资源,队列中的job任务都是按照优先级分配资源,优先级越高分配的资源越多,会公平保证每个job都会分配到资源

相关推荐
SelectDB12 小时前
Apache Doris Python UDF:让 SQL 直接调用 Python 生态,支撑 Agent 时代复杂业务逻辑
大数据·数据库·python
Flittly14 小时前
【AgentScope Java新手村系列】(16)从RAG到多路检索
java·spring boot·spring
小兔崽子去哪了14 小时前
Java 生成二维码解决方案
java·后端
ApacheSeaTunnel15 小时前
当多表数据涌入,Apache SeaTunnel 如何巧妙化解主键冲突?
大数据·开源·数据集成·seatunnel·技术分享·数据同步
人活一口气18 小时前
从JVM调优到MCP协议:Java全栈技术体系深度总结与企业级架构实践
java·spring boot
NE_STOP20 小时前
Vibe Coding -- 完整项目案例实操
java
荣码20 小时前
GraphRAG:普通RAG只能回答"点"的问题,我踩了4个坑才搞懂
java·python
SimonKing20 小时前
Google第三方授权登录
java·后端·程序员
明月光81820 小时前
从一行 @Builder 说起:重新拾起 Java 的 Lombok、注解与 Builder 模式
java
考虑考虑1 天前
Mybatis实现批量插入
java·后端·mybatis