Come funziona il vuoto automatico Postgres
L'autovacuum è il processo di fondo in Postgres ed è abilitato per impostazione predefinita. Tuttavia, è possibile ottenere le impostazioni di Autovacuum navigando al Postgresql.conf file.
Come discusso in precedenza, il vuoto automatico esegue l'aspirazione e l'analisi. Analisi e aspirano Postgres Una tabella in base alla soglia descritta di seguito:
Per la soglia di aspirazione automatica di una tabella, viene utilizzata la seguente equazione:
AutovaCuum Vacuum Soglia = Autovacuum_vacuum_scale_factor * no._of_tuples + autovacuum_vacuum_thresholdE per ottenere la soglia di analisi automatica, la seguente equazione fa il lavoro:
AutovaCuum Analyze soglia = Autovacuum_analyze_scale_factor * Numero di tuple + autovacuum_analyze_thresholdLe terminologie utilizzate nelle sezioni di cui sopra sono descritte nella prossima sezione.
Come configurare il vuoto automatico di Postgres
La funzionalità del vuoto automatico di Postgres dipende dalle impostazioni e dalle opzioni disponibili all'interno di PostgreSQL.Conf File. Con l'aiuto della descrizione fornita di seguito, è possibile modificare i parametri per sintonizzare la funzionalità del vuoto automatico.
I seguenti parametri hanno il ruolo chiave nella definizione della politica per Postgres Autovacuum.
Per modificare il file, è possibile aprirlo in un editor Nano utilizzando il comando indicato di seguito (la posizione di PostgreSQL.Il file conf può variare nel tuo caso):
$ sudo nano/etc/postgresql/12/main/postgresql.confCome configurare i parametri del vuoto automatico per una tabella
IL Postgresql.conf Il file tratta le modifiche globali ai parametri Autovacuum. Tuttavia, puoi sintonizzare i parametri per una singola tabella. Ad esempio, abbiamo usato i seguenti parametri per il Linuxhint Tabella del database mydb:
Questi parametri verranno approvati con l'istruzione di PowerShell alter Tabella e la tabella Alter verrà applicata sulla tabella LinuxHint come mostrato di seguito:
> Alter Table LinuxHint Set (Autovacuum_vacuum_scale_factor = 0.2, autovacuum_vacuum_threshold = 30, autovacuum_analyze_scale_factor = 0.2, autovacuum_analyze_threshold = 20);Può essere calcolato manualmente inserendo i valori nelle equazioni indicate nella sezione sopra ed è le seguenti. Supponiamo che la tabella Linuxhint contenga 10 tuple:
Il funzionamento del vuoto di Autovacuum viene calcolato come mostrato di seguito. L'output mostra che il funzionamento del vuoto di Autovacuum verrà eseguito quando il numero di record obsoleti raggiunge 31.
Soglia di aspirapolvere Autovacuum della tabella LinuxHint = (0.2 * 5) + 30 = 31Allo stesso modo, il funzionamento di analizzare l'autovacuum sulla tabella LinuxHint verrà effettuato quando il numero di inserzioni/eliminazioni/aggiornamento è uguale o supera 21.
AutovaCuum Analyze of LinuxHint Tabella = (0.2*5) + 20 = 21Perché aspirare auto
Guardando il lavoro e la discussione di cui sopra, è possibile estrarre i seguenti vantaggi del vuoto auto:
Conclusione
La funzionalità del vuoto automatico di Postgres consente di eseguire il vuoto e analizzare le tabelle di un database. Anche se si può aspirare e analizzare manualmente, il vuoto automatizzato farà entrambe le cose. Questo articolo fornisce informazioni dettagliate sulla funzionalità del vuoto automatico di Postgres. Postgres calcola i valori di soglia per ciascuna tabella e quindi decide se aspirare o analizzare quella tabella. Inoltre, abbiamo fornito le equazioni di Postgres per calcolare il vaccum e analizzare la soglia.