云数据库 GaussDB-SQL自诊断:告警场景
告警场景
目前支持对以下7种导致性能问题的场景上报告警。
- 多列/单列统计信息未收集
如果存在单列或者多列统计信息(当前特性是实验室特性,使用时请联系华为工程师提供技术支持)未收集,则上报相关告警。调优方法可以参考更新统计信息和统计信息调优。
需要特别注意的是,对于基于OBS外表(当前特性是实验室特性,使用时请联系华为工程师提供技术支持)的查询,如果未收集统计信息也会上报统计信息未收集的告警,但是由于OBS外表(当前特性是实验室特性,使用时请联系华为工程师提供技术支持)的analyze的性能比较差,因此,需要用户对这种场景下告警是否通过analyze收集统计信息,以获取更优的性能,和查询本身的复杂度做权衡。
告警信息示例:
整表的统计信息未收集:
Statistic Not Collect: schema_test.t1
单列统计信息未收集:
Statistic Not Collect: schema_test.t2(c1,c2)
多列统计信息未收集:
Statistic Not Collect: schema_test.t3((c1,c2))
单列和多列统计信息未收集:
Statistic Not Collect: schema_test.t4(c1,c2) schema_test.t4((c1,c2))
- SQL不下推
告警信息示例:
SQL is not plan-shipping, reason : "With Recursive" can not be shipped"SQL is not plan-shipping, reason : "Function now() can not be shipped"SQL is not plan-shipping, reason : "Function string_agg() can not be shipped"
- HashJoin中大表做内表
如果在表连接过程中使用了Hashjoin(可以在GS_WLM_SESSION_HISTORY的query_plan字段中查看到),且连接的内表行数是外表行数的10倍或以上;同时内表在每个DN上的平均行数大于10万行,且发生了下盘,则上报相关告警。调优方法可以参考使用plan hint调优执行计划。
告警信息示例:
PlanNode[7] Large Table is INNER in HashJoin “Vector Hash Aggregate”
- 大表等值连接使用Nestloop
如果在表连接过程中使用了nestloop(可以在使用plan hint调优执行计划的query_plan字段中查看到),并且两个表中较大表的行数平均每个DN上的行数大于10万行、表的连接中存在等值连接,则上报相关告警。调优方法可以参考使用plan hint调优执行计划。
告警信息示例:
PlanNode[5] Large Table with Equal-Condition use Nestloop"Nested Loop"
- 大表Broadcast
如果在Broadcast算子中,平均每DN的行数大于10万行,则告警大表broadcast。调优方法可以参考使用plan hint调优执行计划。
告警信息示例:
PlanNode[5] Large Table in Broadcast "Streaming(type: BROADCAST dop: 1/2)"
- 数据倾斜
某表在各DN上的分布,存在某DN上的行数是另一DN上行数的10倍或以上,且有DN中的行数大于10万行,则上报相关告警。调优方法可以参考案例选择合适的分布列和数据倾斜调优。
告警信息示例:
PlanNode[6] DataSkew:"Seq Scan", min_dn_tuples:0, max_dn_tuples:524288
- 估算不准
如果优化器的估算行数和实际行数中的较大值平均每DN行数大于10万行,并且估算行数和实际行数中较大值是较小值的10倍或以上,则上报相关告警。调优方法可以参考使用plan hint调优执行计划。
告警信息示例:
PlanNode[5] Inaccurate Estimation-Rows: "Hash Join" A-Rows:0, E-Rows:52488
- 日志监控与告警_日志告警规则_如何配置日志告警_日志分析_日志服务
- 处理主机告警事件_主机安全告警_怎么处理主机安全告警
- GaussDB介绍_GaussDB数据库介绍_高斯数据库介绍-华为云
- GaussDB测试_GaussDB数据库测试_高斯数据库测试-华为云
- GaussDB告警_GaussDB数据库告警事件_高斯数据库告警事件_华为云
- GaussDB原理_GaussDB数据库原理_高斯数据库原理-华为云
- 国内GaussDB数据库_GaussDB介绍_国内华为高斯数据库
- 华为云资料 2021年 7月刊
- GaussDB安装_GaussDB数据库安装_高斯数据库安装-华为云
- 日志告警情况分析_ 日志告警有哪些_云日志服务LTS-华为云