为何Redshift执行VACUUM+ANALYZE后svv_table_info的stats_off未更新?
Redshift stats_off值为10.0且ANALYZE后无变化的原因
- Redshift默认将stats_off ≤20视为统计信息足够新鲜,无需更新。手动执行
ANALYZE时,系统会先判断统计信息的陈旧程度是否达到需要更新的阈值,10.0远低于这个阈值,所以会跳过更新操作,stats_off值自然不会变化。 VACUUM FULL的作用是整理表存储、回收空间、排序数据,它和统计信息更新完全无关,所以执行后只会降低未排序行数,不会影响stats_off。- 10.0是完全正常的有效值,这个级别的统计信息陈旧度不会影响查询优化器生成高效的执行计划,不需要强制更新。
- 如果一定要将stats_off降到0,可以执行强制统计计算命令:
ANALYZE <你的表名> COMPUTE STATISTICS,这个命令会忽略阈值判断,重新生成全量统计信息。
内容的提问来源于stack exchange,提问作者mrc
相关产品推荐
相关产品推荐

