性能,永远是有对比才有性能,不能简单的说性能慢或快。在有明确参考值的情况下,讨论性能快慢才是有意义的。
目录导航
声明
所有性能,都要在可比的环境下,如果你有两个环境,哪怕表面硬件软件参数一样,但一样不等于环境一样。测试对比环境建议:
1、同一个环境对比
比如先测试第一套,然后卸载了测试第二套,必要时,再次卸载了重复测试第一套、第二套。
此要求特别适用于不同数据库对比,或者一个数据库不同版本对比。
2、或者交换环境测试
如果是2个环境对比,测试完毕后,全部卸载,交换环境再次测试。
3、相同的数据
必须保证两套环境所用的数据是完全一样的,否则即使你用相同工具制造的,也不能代表最终结果一致。为了避免干扰,请用相同的数据。 比如加载,则使用完全相同的数据源。
4、不要带其它负载
关闭背景任务,关闭其它业务,只运行你这个性能差距的业务。 如果测试结果性能一致,那么至少可以肯定是其它业务干扰造成的。如果不一致,因为干扰条件少,分析也简单些。
有明确参考场景
对于有明确参考的,比如性能忽快忽慢,或者明显比以前的慢,或者使用一段时间后,越来越慢的情况。
加载
指加载性能不稳定,或者相比以前有明显下降的情况。建议
1、先确认系统资源是否繁忙,这部分和后面查询性能排查的方案是一样的。避免系统使用一段时间后,软硬件已经发生了改变,特别是类似RAID5坏了一块磁盘等情况。
GBase 8a数据库集群业务SQL执行慢的可能原因
2、避免并发,单独执行,也就是确认是这个SQL,这个表的问题,还是其他并发进程干扰的。
查询
查询性能低于平时,且经常出现,则可以参考如下文章:
无明确参考场景
如果你第一次运行,并没有其他环境或者数据库作为对比,请先确认你的硬件是正常的,比如
如果换个环境就慢很多,除了前面的硬件配置是否相同外,也请对比【数据库参数配置】方面是否一致。