gpt4 book ai didi

database - 在 RDS 实例上收缩 pg_toast

转载 作者:行者123 更新时间:2023-11-29 14:29:38 25 4
gpt4 key购买 nike

我有一个 Postgres 9.6 RDS 实例,它每天增长 1GB。我们对与 pg_toast 相关的关系做了一些优化,但 pg_toast 的大小没有改变。

Autovacuum 已打开,但由于 autovacuum/VACUUM FREEZE 不回收空间并且 VACUUM FULL 进行独占锁定,我不确定最好的方法是什么。

表中的数据是我们用户体验的核心,尽管遵循 this方法是有道理的,它会带走我们的用户期望在 vacuum full 过程中看到的数据。

这里还有哪些其他选项可以缩小 pg_toast?

这里是一些关于 table 大小的数据。您可以在前两张图片中看到,关系 scoring_responsescore 是与 pg_toast 关联的关系。

enter image description here enter image description here

Autovacuum 设置

enter image description here

当前为特定 pg_toast 运行的 autovacuum 进程的结果。它可能会有所帮助。 enter image description here

最佳答案

VACUUM (FULL) 是 PostgreSQL 提供的唯一减少表大小的方法。

臃肿的 TOAST 表对您来说是这样的问题吗? TOAST 表始终通过 TOAST 索引访问,因此膨胀不应该是性能问题。

我知道有两个项目仅使用一个短的ACCESS EXCLUSIVE 锁提供表重组,即pg_squeezepg_repack ,但您可能无法在 Amazon RDS 数据库中使用它们。

为了防止问题变得更糟,您应该首先尝试将受影响的表的 autovacuum_vacuum_cost_limit 提高到 2000,如果这不起作用,请降低 autovacuum_vacuum_cost_delay 到 0。您可以使用 ALTER TABLE 更改单个表的设置。

关于database - 在 RDS 实例上收缩 pg_toast,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53624270/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com