更新时间:2023-03-17 GMT+08:00

ALM-16002 Hive SQL执行成功率低于阈值

告警解释

系统每30秒周期性检测执行的HQL成功百分比,HQL成功百分比由一个周期内Hive执行成功的HQL数/Hive执行HQL总数计算得到。该指标可通过“集群 > 待操作的集群名称 > 服务 > Hive > 实例 > 具体的HiveServer实例”查看。执行的HQL成功百分比指标默认提供一个阈值范围(90%),当检测到百分比指标低于阈值范围产生该告警。在该告警的定位信息可查看产生该告警的主机名,该主机IP也是HiveServer节点IP。

用户可通过“运维 > 告警 > 阈值设置 > 待操作集群的名称 > Hive > 执行成功的HQL百分比”修改阈值。

当系统在一个检测周期检测到该指标高于阈值的110%时,恢复告警。

告警属性

告警ID

告警级别

是否自动清除

16002

重要

告警参数

参数名称

参数含义

来源

产生告警的集群名称。

服务名

产生告警的服务名称。

角色名

产生告警的角色名称。

主机名

产生告警的主机名。

Trigger condition

系统当前指标取值满足自定义的告警设置条件。

对系统的影响

系统执行业务能力过低,无法正常响应客户请求。

可能原因

  • HQL命令语法错误。
  • 执行Hive on HBase任务时HBase服务异常。
  • 执行Hive on Spark任务时Spark服务异常。
  • 依赖的基础服务HDFS、Yarn、ZooKeeper等异常。

处理步骤

检查HQL命令是否符合语法。

  1. 在FusionInsight Manager界面选择“运维 > 告警”,查看告警详情,获取产生告警的节点信息。
  2. 使用Hive客户端连接到产生该告警的HiveServer节点,查询Apache提供的HQL语法规范,确认输入的命令是否正确。详情请参见https://cwiki.apache.org/confluence/display/hive/languagemanual

    • 是,执行4
    • 否,执行3

    若想查看执行错误语句的用户,可下载产生该告警的HiveServer节点的HiveServerAudit日志,下载的“开始时间”和“结束时间”分别为告警产生时间的前后10分钟。打开日志文件查找“Result=FAIL”关键字筛选执行错误语句的日志信息,再根据日志信息中的“UserName”查看执行错误语句的用户。

  3. 输入正确的HQL语句,观察命令是否正确执行。

    • 是,执行12
    • 否,执行4

检查HBase服务是否异常。

  1. 与执行HQL命令的用户确认是否执行的是Hive on HBase任务。

    • 是,执行5
    • 否,执行8

  2. 在FusionInsight Manager界面选择“集群 > 待操作集群的名称 > 服务”,在服务列表查看HBase服务状态是否正常。

    • 是,执行8
    • 否,执行6

  3. 选择“运维 > 告警”,查看告警界面的HBase相关告警,参照对应告警帮助进行处理。
  4. 输入正确的HQL语句,观察命令是否正确执行。

    • 是,执行12
    • 否,执行8

检查HDFS、Yarn、ZooKeeper等是否正常。

  1. 在FusionInsight Manager首页,选择“集群 > 待操作集群的名称 > 服务”。
  2. 在服务列表查看HDFS、Yarn、ZooKeeper等服务是否正常。

    • 是,执行12
    • 否,执行10

  3. 查看告警界面的相关告警,参照对应告警帮助进行处理。
  4. 输入正确的HQL语句,观察命令是否正确执行。

    • 是,执行12
    • 否,执行13

  5. 等待一分钟,查看本告警是否清除。

    • 是,处理结束。
    • 否,执行13

收集故障信息。

  1. 在FusionInsight Manager首页,选择“运维 > 日志 > 下载”。
  2. 在“服务”中勾选待操作集群的如下节点信息。

    • Mapreduce
    • Hive

  3. 单击右上角的设置日志收集的“开始时间”和“结束时间”,分别为告警产生时间的前后10分钟,单击“下载”。
  4. 请联系运维人员,并发送已收集的故障日志信息。

告警清除

此告警修复后,系统会自动清除此告警,无需手工清除。

参考信息

无。