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