Postgres RDS 实例的 AWS 副本是否需要独立于其主实例进行 Vacuum 和 Analyze?

Postgres RDS 实例的 AWS 副本是否需要独立于其主实例进行 Vacuum 和 Analyze?

假设我没有使用逻辑复制......

我不清楚低级复制如何与其他低级操作交互,例如真空分析

我不清楚副本是否倾向于成为主服务器的块级副本,主服务器上的 vacuum 所做的更改会复制到副本上。或者副本是否更负责自我维护。


背景

我们有一个 RDS 实例,其容量每年增长约 2 TB。今天我们注意到一些现有查询运行非常缓慢。

当一个非常大的表上的查询发生突然变化并且该变化非常持续地增长时,我的第一反应是检查代码变化,其次是检查表统计信息。

但这表明我在真空/分析方面的知识存在差距。

答案1

适用于 PostgreSQL 的 Amazon RDS用途PostgreSQL 内置流式复制

本质上,它是一种服务器范围的低级复制,有时也称为物理复制。是的,您可以将其视为某种块级复制。

但流复制实际上并不复制块。它的工作原理是不断从主服务器发送 WAL 数据(重做记录)并将其重放到副本上。

真空操作被记录在 WAL 中,并在副本服务器上重播。

对于分析操作,结果统计信息将写入系统表pg_classpg_statistic。这些表的更新将记录在 WAL 中,并重播到副本上。

相关内容