
# ALM-16053 Hive的HQL最近5分钟平均提交时间超过阈值
#### 告警解释
系统周期性检测HQL平均提交时间，该时间为调用MapReduce/Spark/Tez接口提交Yarn作业的时间，包含上传依赖的临时Jar包、切分文件等时间。当最近5分钟HQL的平均提交时间超过阈值时上报该告警。
当最近5分钟HQL的平均提交时间小于阈值时，告警恢复。
本章节仅适用于MRS 3.5.0-LTS及之后版本。
#### 告警属性
| 告警ID  | 告警级别                                                                                 | 是否可自动清除 |
|:---|:---|:---|
| 16053 | 紧急（默认阈值为240秒） 重要（默认阈值为120秒） | 是       |
   
#### 告警参数
| 类别   | 参数名称              | 参数含义                  |
|:---|:---|:---|
| 定位信息 | 来源                | 产生告警的集群名称。            |
| 定位信息 | 服务名               | 产生告警的服务名称。            |
| 定位信息 | 角色名               | 产生告警的角色名称。            |
| 定位信息 | 主机名               | 产生告警的主机名称。            |
| 附加信息 | Trigger condition | 系统当前指标取值满足自定义的告警设置条件。 |
   
#### 对系统的影响
发生当前告警时，表示最近5分钟HQL的平均提交时间超过阈值，会导致HQL运行时间变长。对于Hive On Spark作业，可能会导致作业报错。
#### 可能原因
HiveServer GC时间过长或HDFS NameNode/Router RPC时延过高。
#### 处理步骤
**查看HiveServer GC时间是否过长。**
1. 登录FusionInsight Manager界面，选择"运维 \> 告警 \> 告警"，在告警列表中查看是否上报"Hive服务进程堆内存使用超出阈值"告警。 
   - 是，执行[步骤 2]。
   
   - 否，执行[步骤 4]。
   
   
   
   
2. 参考"ALM-16005 Hive服务进程堆内存使用超出阈值"的处理步骤处理该故障。
3. 在告警列表中，查看该告警是否清除。 
   - 是，处理完毕。
   
   - 否，执行[步骤 4]。
   
   
   
   
**查看HDFS RPC时延是否过高。**
4. 在告警列表中查看是否上报"NameNode RPC处理平均时间超过阈值"告警。
   
   - 是，执行[步骤 5]。
   
   - 否，执行[步骤 7]。
   
   
   
   
5. 参考"ALM-14021 NameNode RPC处理平均时间超过阈值"的处理步骤处理该故障。
6. 在告警列表中，查看该告警是否清除。 
   - 是，处理完毕。
   
   - 否，执行[步骤 7]。
   
   
   
   
**收集故障信息。**
7. 在FusionInsight Manager首页，选择"运维 \> 日志 \> 下载"。
8. 在"服务"中勾选待操作集群的"Hive"。
9. 单击右上角的时间编辑按钮，设置日志收集的"开始时间"和"结束时间"，分别为告警产生时间的前后10分钟，单击"下载"。
10. 在FusionInsight Manager首页，选择"集群 \> 服务 \> Hive \> 更多 \> 采集堆栈"，在采集堆栈界面配置以下参数： 
    - 需要采集的角色勾选"HiveServer"。
    
    - 选择采集的内容勾选"jstack"和"使能jstack和jmap -histo连续采集"。
    
    - 采集间隔设置为10秒，持续时长设置为2分钟。
    
    
    
    
11. 单击"确定"，等待采集完成后单击"下载"。
12. 请联系运维人员，并发送已收集的故障日志信息和堆栈信息。
 
#### 告警清除
此告警修复后，系统会自动清除此告警，无需手工清除。
#### 参考信息
不涉及。
