云数据库 GAUSSDB-分析表:表自动分析

时间:2024-11-02 18:48:15

表自动分析

GaussDB 提供了GUC参数autovacuum用于控制数据库自动清理功能的启动。

autovacuum设置为on时,系统定时启动autovacuum线程来进行表自动分析,如果表中数据量发生较大变化达到阈值时,会触发表自动分析,即autoanalyze。

  • 对于空表而言,当表中插入数据的行数大于50时,会触发表自动进行ANALYZE。
  • 对于表中已有数据的情况,阈值设定为50+10%*reltuples,其中reltuples是表的总行数。

autovacuum自动清理功能的生效还依赖于下面两个GUC参数:

  • track_counts 参数需要设置为on,表示开启收集收据库统计数据功能。
  • autovacuum_max_workers参数需要大于0,该参数表示能同时运行的自动清理线程的最大数量。
  • autoanalyze只支持默认采样方式,不支持百分比采样方式。
  • 多列统计信息(当前特性是实验室特性,使用时请联系华为工程师提供技术支持)仅支持百分比采样,因此autoanalyze不收集多列统计信息。
  • autoanalyze支持行存表和列存表,不支持外表、OBS外表(当前特性是实验室特性,使用时请联系华为工程师提供技术支持)、临时表、unlogged表和toast表。
support.huaweicloud.com/distributed-devg-v2-gaussdb/gaussdb_v5r2c10_0200.html