Establecimiento de parámetros autovacuum de nivel de tabla - Amazon Relational Database Service

Establecimiento de parámetros autovacuum de nivel de tabla

Los parámetros de almacenamiento relacionados con autovacuum se pueden definir en el nivel de tabla, algo que puede resultar mejor que alterar el comportamiento de toda la base de datos. Para las tablas grandes, podría ser necesario definir unos ajustes agresivos, y es posible que no sea deseable que autovacuum se comporte de esa forma para todas las tablas.

La siguiente consulta mostrará qué tablas tienen habilitadas actualmente las opciones de nivel de tabla.

SELECT relname, reloptions FROM pg_class WHERE reloptions IS NOT null;

Un ejemplo en el que esto puede resultar útil es el de las tablas que son mucho más grandes que el resto de las tablas. Supongamos que dispone de una tabla de 300 GB y otras 30 tablas inferior a 1 GB. En ese caso, podría definir algunos parámetros concretos para la tabla grande con el fin de evitar alterar el comportamiento de todo el sistema.

ALTER TABLE mytable set (autovacuum_vacuum_cost_delay=0);

Al hacer esto, desactiva el retraso de autovacuum basado en costos para esta tabla a expensas de un mayor uso de recursos en su sistema. Normalmente, autovacuum hace una pausa por autovacuum_vacuum_cost_delay cada vez que se alcanza autovacuum_cost_limit. En la documentación de PostgreSQL, puede obtener información detallada relativa al vacío basado en el costo.