文档首页/ 数据仓库服务 GaussDB(DWS)/ 常见问题/ 数据库性能/ 为什么GaussDB(DWS)使用一段时间后执行SQL很慢?
更新时间:2024-06-21 GMT+08:00

为什么GaussDB(DWS)使用一段时间后执行SQL很慢?

数据库在使用一段时间后,随着业务的增加使得表数据增加,或者对表数据经常进行增、删、改之后,引发数据膨胀和统计信息不准造成性能下降。

建议对于频繁增、删、改的表,定期执行vacuum full和analyze操作。操作步骤如下:

  1. 默认每30000条数据收集100条做统计信息,当数据量大的时候,发现sql时快时慢,一般是执行计划发生了变化,统计信息的需要调整采样率。set default_statistics_target可以提高采样率,对优化器生成最优计划有所帮助。

  2. 重新执行analyze。详细信息请参见ANALYZE | ANALYSE

若用户想要知道是否是磁盘碎片的问题影响了数据库的性能,可以使用以下函数进行查询:

SELECT * FROM pgxc_get_stat_dirty_tables(30,100000);