ANALYZE
是收集索引统计信息还是仅收集表格?
获取最新索引使用情况和统计信息的正确方法是什么?
我的版本是Postgres 9.6
答案 0 :(得分:2)
ANALYZE
收集有关表格列中值分布的统计信息。
使用普通索引,您不需要收集索引的任何统计信息,因为您需要知道的是列值的分布。
因此ANALYZE
之前或之后CREATE INDEX
无关紧要。
此规则的例外是表达式的索引。
对于这些,ANALYZE
将收集有关表达式值的分布的数据,因此ANALYZE
之后的CREATE INDEX
将始终改善计划程序&#39 ; s估计是否在查询中使用该表达式。无论索引是否最终在查询执行期间使用,都是如此。
索引使用情况的统计数据完全不同。您可以在pg_stat_all_indexes
找到它们。