yarn application status一些知识分析
一个菜鸡大数据开发者
本人最近也是突然研究到yarn application这一块,突然对这个application执行过程比较感兴趣,因此通过查阅资料、论坛等方式了解了一些知识分享一下。
- 我们在hive些sql进行查询的时候,都会生成一个application ID,
关于这些信息,做一个简单的描述:
Application-Id : application_1635832725447_0431 **#也就是你生成的作业ID**
Application-Name : HIVE-57ee7e3f-eafa-4057-b27f-eb14a439e07e **# 随机的作业名称**
Application-Type : TEZ **#执行作业的引擎**
User : hadoop **#用户**
Queue : default **#队列**
Start-Time : 1636012844389 **#开始时间(时间戳)**
Finish-Time : 0 **#完成时间**
Progress : 0% **#作业已经计算的百分比**
State : RUNNING **#作业状态**
Final-State : UNDEFINED #最终状态
Tracking-URL : **http://datawarehouse02:34385/ui/ #跟踪地址**
RPC Port : ***** **#RPC 端口(节点通信的端口)**
AM Host : ***** **#服务器名称**
Aggregate Resource Allocation : 303957 MB-seconds, 145 vcore-seconds #作业总资源分配、总cpu分配
Diagnostics :
今天就主要说一下Aggregate Resource Allocation 指标中的 303957 MB-seconds。
- 这个303957是整个集群给分配给这个作业的资源,
- 也就是说这个数字=集群节点数*集群容器(单位是MB)
- 比如说我们的节点是3台服务器,然后每个节点的容器是五个,每个容器的大小未1024MB.那么这个作业计算的时长就需要303957/3/5/1024=19.78s。也就是平均每个容器需要计算的时间是19.78秒。
- 如何看服务器的容器数量和容器大小?找到配置文件yarn-site.xml,里面会有yarn.nodemanager.resource.memory-mb这个参数就是你所有容器分配的大小,然后yarn.scheduler.minimum-allocation-mb这个就是你每个容器的晓得。总的/每个容器大小=容器个数,大家自己算哈。
如果有说的不对的,欢迎大家指出。