postgresql - postgres autovacuum 计数过高
问题描述
有一个巨大的表(~400m recs),这个表的变化数量在 10k-200k 之间。autovacuum 阈值和比例因子太高,无法启动 autovacuum。使用以下降低阈值
ALTER TABLE schema.table SET (autovacuum_vacuum_scale_factor = 0,autovacuum_vacuum_threshold = 10000,autovacuum_analyze_scale_factor = 0,autovacuum_analyze_threshold = 10000);
所以在 7/29 6.45 之前,桌子上没有发生自动清理(下面是每 15 分钟拍摄的 pg_stat_all_tables 的快照。看起来那天早上有大约 147k 更新,根据阈值应该触发了大约 14 次自动清理。什么我不明白为什么那天早上会发生 921 autovacuum。这个 autovacuum 计数器是否也会在其他一些条件下增加?由于使用此表的许多 autovacuum 进程受到影响(就性能而言)。
解决方案
推荐阅读
- excel - 对象全局失败错误的方法联合
- asp.net - dotnet 发布命令不适用于 aws buildspecs.yml 文件中的 asp dotnet 项目
- node.js - 我需要多个条件的 mongodb 组管道
- validation - 在将视图数据设置到模型之前验证视图数据
- node.js - AWS S3 - 使用 pre-signurl 将对象从一个存储桶复制到另一个存储桶
- html - 如何使用 Twig 打印格式化的 html?
- r - 如何在保留名称的同时将多个文件导入列表?
- python - 如何在 pandas 中使用 apply 对我的代码进行分类?
- payment-gateway - Python 后端中的 Paytm 支付网关 UPI 集成
- reactjs - 如何在 reactjs 中添加 Google Play 商店按钮