Configura l'autovacuum adattivo

Seleziona una versione della documentazione:

Questa pagina fornisce una panoramica dell'autovacuum adattivo di AlloyDB Omni e descrive come configurarlo.

La pulizia è un'importante operazione di manutenzione del database PostgreSQL. Viene utilizzata per recuperare lo spazio di archiviazione occupato da righe aggiornate o eliminate per evitare l'espansione di tabelle o indici. Viene utilizzata anche per bloccare gli ID transazione per evitare il wraparound degli ID transazione e per aggiornare le statistiche delle tabelle.

Per ulteriori informazioni sulla pulizia, vedi Pulizia di routine.

Per automatizzare il processo di pulizia e aggiornare collettivamente le statistiche delle tabelle, AlloyDB Omni supporta l'autovacuum adattivo. L'autovacuum adattivo consente la regolazione automatica del carico di lavoro di pulizia quando il carico di lavoro cambia, rimuove le tuple non attive e aggiorna le statistiche delle tabelle.

L'autovacuum garantisce prestazioni transazionali affidabili e coerenti delle applicazioni e mantiene l'alta disponibilità del sistema impedendo il wraparound degli ID transazione.

Per impostazione predefinita, AlloyDB Omni abilita l'autovacuum adattivo. Puoi disabilitare o modificare l'autovacuum adattivo su AlloyDB Omni utilizzando i flag di database.

Vantaggi

L'autovacuum adattivo offre i seguenti vantaggi:

  • Regolazione automatica delle risorse. AlloyDB Omni regola automaticamente le risorse come CPU, I/O, numero di processi di pulizia e memoria per il processo di pulizia in base allo stato in tempo reale del carico di lavoro e alle risorse disponibili senza influire sulle prestazioni del sistema.

  • Prevenzione del wraparound degli ID transazione. AlloyDB Omni monitora l'avanzamento della pulizia e la velocità di consumo degli ID transazione. Se necessario, AlloyDB Omni limita il consumo degli ID transazione eseguendo la pulizia di ogni tabella nel database, impedendo il wraparound degli ID transazione.

  • Pulizia periodica delle tabelle. AlloyDB Omni attiva l'autovacuum in base al numero di tuple non attive e alle pagine da analizzare. Rimuove le tuple non attive in modo tempestivo per evitare l'espansione di tabelle o indici.

  • Rilevamento automatico dei blocchi. AlloyDB Omni rileva automaticamente i blocchi, come le transazioni a lunga esecuzione, le transazioni preparate orfane e gli slot di replica orfani, e mostra messaggi di avviso simili ai seguenti nel log 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.
    

Configurare l'autovacuum adattivo

Per impostazione predefinita, l'autovacuum adattivo è abilitato su AlloyDB Omni. Puoi disabilitare l'autovacuum adattivo impostando il flag di database enable_google_adaptive_autovacuum di un'istanza su off.

AlloyDB Omni supporta diversi flag di database PostgreSQL standard relativi alla pulizia e all'autovacuum, ad esempio vacuum_cost_delay e autovacuum_vacuum_cost_delay. Non è necessario impostare valori in nessuno di questi flag per il funzionamento dell'autovacuum adattivo, perché questo adatta e ottimizza il suo comportamento in base ai carichi di lavoro reali. Se imposti valori in questi flag, l'autovacuum adattivo regola il suo comportamento per tenere conto delle tue preferenze.

Per visualizzare l'elenco completo dei flag di database PostgreSQL supportati relativi alla pulizia e all'autovacuum, vedi Flag di pulizia e Flag di autovacuum.