Configura el autovacuum adaptable

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

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

Para obtener más información sobre el aspirado, consulta Aspirado de rutina.

Para automatizar el proceso de limpieza y actualizar de forma colectiva las estadísticas de la tabla, AlloyDB admite el autovacuum adaptativo. La aspiración automática adaptable habilita el ajuste automático de la carga de trabajo de la aspiración cuando cambia tu carga de trabajo, quita 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, ya que evita el ajuste del ID de transacción.

De forma predeterminada, AlloyDB habilita el vaciado automático adaptable. Puedes inhabilitar o modificar el autovacío adaptativo en AlloyDB con marcas de base de datos.

Beneficios

La limpieza automática adaptativa ofrece los siguientes beneficios:

  • Ajuste automático de los recursos. AlloyDB ajusta automáticamente recursos como la CPU, la E/S, la cantidad de procesos de limpieza y la memoria para el proceso de limpieza en función del 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 del vaciado y la velocidad de consumo del ID de transacción. Cuando sea necesario, AlloyDB regula su consumo de ID de transacción aspirando cada tabla de la base de datos, lo que evita que se ajuste el ID de transacción.

  • Limpieza periódica de tablas. AlloyDB activa el autovacuum según la cantidad de tuplas muertas y las páginas que se deben analizar. Quita las tuplas inactivas de forma oportuna para evitar el sobredimensionamiento de la tabla o el índice.

  • Detección automática de bloqueadores. AlloyDB detecta automáticamente bloqueadores, como transacciones de larga duración, transacciones preparadas huérfanas, ranuras de replicación huérfanas y muestra mensajes de advertencia similares al siguiente 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 autocompletado automático adaptable está habilitado en AlloyDB. Para inhabilitar la aspiración automática adaptable, establece 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 marcas de base de datos, consulta Configura marcas de base de datos de una instancia.

AlloyDB admite varias marcas de base de datos estándar de PostgreSQL relacionadas con el volcado y el volcado automático, 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 adaptativa, ya que esta se adapta y optimiza su comportamiento a tus cargas de trabajo reales. Si configuras valores en estas marcas, el autovacuum adaptativo ajusta su comportamiento para tener en cuenta tus preferencias.

Para ver la lista completa de marcas de base de datos de PostgreSQL compatibles relacionadas con el vaciado y el autovacío, consulta marcas de vaciado y marcas de autovacío.