Configura el autovacuum adaptable

Para recuperar espacio de almacenamiento de las filas actualizadas o borradas, actualizar las estadísticas de las tablas y evitar el ajuste del ID de transacción, AlloyDB para PostgreSQL habilita la limpieza automática adaptable de forma predeterminada. La aspiración automática adaptable ajusta automáticamente las cargas de trabajo de aspiración a medida que cambia el tráfico de la base de datos, quita las tuplas inactivas y mantiene un rendimiento transaccional coherente y una alta disponibilidad.

La limpieza es una operación de mantenimiento fundamental de PostgreSQL que evita el sobredimensionamiento de tablas o índices, y congela los IDs de transacción para evitar el ajuste de los IDs de transacción. Para obtener más información, consulta Vacuuming de rutina.

Puedes inhabilitar o modificar la limpieza automática adaptable en AlloyDB con las marcas de base de datos.

Beneficios

La limpieza automática adaptable ofrece los siguientes beneficios:

  • Ajuste automático de recursos. AlloyDB ajusta automáticamente los recursos, como la CPU, la E/S, la cantidad de procesos de limpieza y la memoria para el proceso de limpieza, según el estado en tiempo real de la carga de trabajo y los recursos disponibles, sin afectar el rendimiento del sistema.

  • Prevención del ajuste del ID de transacción AlloyDB supervisa el progreso de la limpieza y la velocidad de consumo de los IDs de transacción. Cuando es necesario, AlloyDB limita el consumo de IDs de transacción limpiando todas las tablas de la base de datos, lo que evita el agotamiento de los IDs de transacción.

  • Limpieza periódica de las tablas. AlloyDB activa la limpieza automática en función de la cantidad de tuplas inactivas y las páginas que se deben analizar. Quita las tuplas inactivas de manera oportuna para evitar el aumento excesivo de tablas o índices.

  • Detección automática de bloqueadores AlloyDB detecta automáticamente los bloqueadores, como las transacciones de larga duración, las transacciones preparadas huérfanas y las ranuras de replicación huérfanas, y muestra mensajes de advertencia similares a los siguientes en el registro postgres:

    Found a backend process PROCESS_ID with a long running transaction whose transaction
    id age AGE is larger than or equal to the transaction age threshold AGE_THRESHOLD.
    

Configura la limpieza automática adaptable

De forma predeterminada, la limpieza automática adaptable está habilitada en AlloyDB. Puedes inhabilitar la limpieza automática adaptable configurando la marca de base de datos enable_google_adaptive_autovacuum de una instancia en off.

Para obtener más información sobre cómo configurar las marcas de base de datos, consulta Configura las marcas de base de datos de una instancia.

AlloyDB admite varias marcas de base de datos de PostgreSQL estándar relacionadas con la limpieza y la limpieza automática, por ejemplo, vacuum_cost_delay y autovacuum_vacuum_cost_delay. No es necesario que establezcas valores en ninguna de estas marcas para que funcione la limpieza automática adaptable, ya que esta adapta y optimiza su comportamiento a tus cargas de trabajo reales. Si estableces valores en estas marcas, el autovacuum adaptable ajusta su comportamiento para tener en cuenta tus preferencias.

Para ver la lista completa de las marcas de base de datos de PostgreSQL compatibles relacionadas con vacuum y autovacuum, consulta las marcas de vacuum y las marcas de autovacuum.