Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
In PostgreSQL, l'vacuuming è fondamentale per garantire la salute del database in quanto recupera lo spazio di archiviazione e previene problemi di wraparound degli ID delle transazioni.
La postgres_get_av_diag()
funzione aiuta a identificare i problemi che impediscono o ritardano l'avanzamento del vuoto aggressivo. Vengono forniti suggerimenti, che possono includere comandi per risolvere il problema laddove sia identificabile o linee guida per ulteriori diagnosi laddove il problema non sia identificabile. I vacuobloccanti aggressivi vengono segnalati quando l'età supera la soglia dell'autovuoto adattivo di RDS, pari a 500 milioni di transazioni. IDs
Qual è l'età dell'ID della transazione?
La age()
funzione per la transazione IDs calcola il numero di transazioni avvenute dal più vecchio ID di transazione non bloccato per un database (pg_database.datfrozenxid
) o una tabella (pg_class.relfrozenxid
). Questo valore indica l'attività del database dall'ultima operazione aggressiva di vacuum ed evidenzia il probabile carico di lavoro per i prossimi processi VACUUM.
Cos'è un vuoto aggressivo?
Un'operazione VACUUM aggressiva esegue una scansione completa di tutte le pagine all'interno di una tabella, comprese quelle normalmente saltate durante la normale procedura. VACUUMs Questa scansione approfondita mira a «congelare» le transazioni che IDs si avvicinano alla loro età massima, prevenendo efficacemente una situazione nota come transazione ID wraparound.
Per postgres_get_av_diag()
segnalare i bloccanti, è necessario che il blocco abbia almeno 500 milioni di transazioni.