我在postgres文档中找不到这方面的答案,尽管一些DBA在他们的博客中声称手动分析构建了完整的表统计数据,而自动真空更新只是增量的统计数据,但是混淆是一些DBA说的相反的情况。
我知道自动真空是真空的预定版本,并根据我们所知道的其他参数进行分析。现在我的问题是,自动真空的分析是重建整个表统计信息,还是只是更新现有的统计信息(增量)?还有一个与同一主题相关的问题是,“默认统计”值也适用于自真空分析吗?
谢谢,
萨吉斯·谢蒂
发布于 2022-01-31 17:58:42
Auto真空度的分析与手动分析(所有列)所做的相同。我在源代码中没有看到任何支持“自动真空工作增量和手动分析可以完全重建”的东西。"update_attstats“甚至看都不知道是谁在叫它。
他们以同样的方式处理“默认统计”。
发布于 2022-02-01 12:40:33
vacuum、vacuum full和analyze之间可能有些混淆。
vacuum是将死行标记为空闲空间的操作。analyze是收集数据统计信息的操作。vacuum full并不是vacuum的变体,尽管它的名字暗示着它。这就是我喜欢叫它unbloat或rewrite的原因。是这个操作重写了整个表。因此,这一行动将真正收回自由空间,并消除膨胀。有关更多详细信息,请参阅以下文档:https://www.postgresql.org/docs/current/routine-vacuuming.html
https://dba.stackexchange.com/questions/306809
复制相似问题