Configura el autovacuum adaptable

Selecciona una versión de la documentación:

En esta página, se proporciona una descripción general del autovacuum adaptable de AlloyDB Omni y se describe cómo configurarlo.

El proceso de VACUUM es una operación importante de mantenimiento de la base de datos de PostgreSQL. Se usa para recuperar el espacio de almacenamiento que ocupan las filas actualizadas o borradas y evitar la expansión excesiva de la tabla o el índice. También se usa para inmovilizar los IDs de transacción y evitar el ajuste de ID de transacción, así como para actualizar las estadísticas de la tabla.

Para obtener más información sobre el vaciado, consulta Vaciado de rutina.

Para automatizar el proceso de limpieza y actualización colectiva de las estadísticas de la tabla, AlloyDB Omni admite la limpieza automática adaptativa. La aspiración automática adaptable permite el ajuste automático de la carga de trabajo de aspiración cuando cambia tu carga de trabajo, quita las tuplas inactivas y actualiza las estadísticas de la tabla.

Autovacuum garantiza un rendimiento transaccional de la aplicación confiable y coherente, y mantiene la alta disponibilidad del sistema evitando el ajuste del ID de transacción.

De forma predeterminada, AlloyDB Omni habilita el autovacuum adaptable. Puedes inhabilitar o modificar el autovacuum adaptable en AlloyDB Omni con marcas de bases de datos.

Beneficios

El autovacuum adaptable ofrece los siguientes beneficios:

  • Ajuste automático de recursos: AlloyDB Omni ajusta automáticamente los recursos, como la CPU, la E/S, la cantidad de procesos de vacuum y la memoria para el proceso de vacuum, 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 Omni supervisa el progreso de vacuum y la velocidad de consumo del ID de transacción. Cuando es necesario, AlloyDB Omni limita el consumo de IDs de transacción realizando un VACUUM en cada tabla de la base de datos, lo que evita el ajuste de IDs de transacción.

  • Compactación periódica de tablas. AlloyDB Omni activa autovacuum en función de la cantidad de tuplas muertas y las páginas que se deben analizar. Quita las tuplas inactivas de manera oportuna para evitar el sobredimensionamiento de la tabla o el índice.

  • Detección automática de bloqueos. AlloyDB Omni 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 el autovacuum adaptable

De forma predeterminada, el autovacuum adaptable está habilitado en AlloyDB Omni. Puedes inhabilitar la aspiración automática adaptable configurando la marca de base de datos enable_google_adaptive_autovacuum de una instancia en off.

AlloyDB Omni admite varias marcas de bases de datos de PostgreSQL estándar relacionadas con vacuum y autovacuum, por ejemplo, vacuum_cost_delay y autovacuum_vacuum_cost_delay. No es necesario que establezcas valores en ninguna de estas marcas para que el autovacuum adaptable funcione, ya que este se adapta y optimiza su comportamiento para tus cargas de trabajo reales. Si configuras valores en estas marcas, el proceso de autovacuum adaptable ajustará su comportamiento para tener en cuenta tus preferencias.

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