
# 案例：调整分布键
#### 现象描述
某局点测试过程中EXPLAIN ANALYZE后有如下情况：
![](https://support.huaweicloud.com/distributed-devg-v2-gaussdb/figure/zh-cn_image_0000002185459094.jpg "点击放大")
从执行信息上比较明确地可以看出HashJoin是整个计划的性能瓶颈点，并且从HashJoin的执行时间信息\[2657.406,93339.924\](数值的具体含义请参见[SQL执行计划详解](https://support.huaweicloud.com/distributed-devg-v2-gaussdb/gaussdb-12-0174.html#ZH-CN_TOPIC_0000002187368432))，上可以看出HashJoin在不同的DN上存在严重的计算偏斜。
同时在Memory Information(如下图)中可以看出各个节点的内存资源消耗也存在极为严重的偏斜。
![](https://support.huaweicloud.com/distributed-devg-v2-gaussdb/figure/zh-cn_image_0000002220984817.png "点击放大")
#### 优化分析
上述两个特征表明了此SQL语句存在极为严重的计算倾斜。进一步向HashJoin算子的下层分析发现Seq Scan on s_riskrate_setting也存在极为严重的计算倾斜\[38.885,2940.983\]。根据Scan的含义推测此计划性能问题的根源在于表s_riskrate_setting数据的分布倾斜。实际分析之后确实发现表s_riskrate_setting存在严重的数据倾斜。整改之后性能从94s提升为50s。
