Hvordan Postgres Auto Vacuum fungerer
Autovacuum er bakgrunnsprosessen i Postgres og er aktivert som standard. Imidlertid kan du få innstillingene til Autovacuum ved å navigere til PostgreSql.konf fil.
Som diskutert tidligere, utfører bilvakuumet både støvsuging og analyse. Postgres analyser og støvsug en tabell basert på terskelen beskrevet nedenfor:
For den automatiske støvsugende terskelen til en tabell, brukes følgende ligning:
Autovacuum vakuumterskel = autovacuum_vacuum_scale_factor * nei._of_tuples + autovacuum_vacuum_thresholdOg for å få den automatiske analysering av terskel, gjør følgende ligning jobben:
Autovacuum analysere terskel = autovacuum_analyze_scale_factor * antall tuples + autovacuum_analyze_thresholdTerminologiene som brukes i ovennevnte seksjoner er beskrevet i den kommende delen.
Hvordan du konfigurerer postgres auto vakuum
Auto -vakuumfunksjonaliteten til Postgres avhenger av innstillingene og alternativene som er tilgjengelige i PostgreSQL.Conf -fil. Ved hjelp av beskrivelsen nedenfor kan du endre parametrene for å stille inn automatisk vakuumfunksjonalitet.
Følgende parametere har nøkkelrollen i å definere policy for postgres autovacuum.
For å redigere filen, kan du åpne den i en Nano -redaktør ved å bruke kommandoen angitt nedenfor (plasseringen av PostgreSQL.Conf -filen kan variere i ditt tilfelle):
$ sudo nano/etc/postgreSql/12/main/postgreSql.konfHvordan konfigurere automatisk vakuumparametere for en tabell
De PostgreSql.konf Filen omhandler de globale endringene i autovacuumparametrene. Du kan imidlertid stille inn parametere for en enkelt tabell. For eksempel har vi brukt følgende parametere for Linuxhint Tabell over databasen MYDB:
Disse parametrene vil bli passert med Alter Table Statement of PowerShell, og Alter -tabellen vil bli brukt på Linuxhint -tabellen som vist nedenfor:
> ALTER TABELL Linuxhint Set (Autovacuum_Vacuum_scale_Factor = 0.2, autovacuum_vacuum_threshold = 30, autovacuum_analyze_scale_factor = 0.2, autovacuum_analyze_threshold = 20);Det kan beregnes manuelt ved å sette inn verdiene i ligningene gitt i delen ovenfor og er som følger. Anta at Linuxhint -tabellen inneholder 10 tuples:
Vakuumoperasjonen av autovacuum beregnes som vist nedenfor. Utgangen viser at vakuumoperasjonen av autovacuum vil bli utført når antallet foreldede poster når 31.
Autovacuum vakuumterskel for Linuxhint -tabell = (0.2 * 5) + 30 = 31Tilsvarende vil analysere driften av Autovacuum på Linuxhint -tabellen bli utført når antallet innsettinger/slettinger/oppdatering lik eller overstiger 21.
Autovacuum Analyse av Linuxhint -tabell = (0.2*5) + 20 = 21Hvorfor bilvakuum
Når vi ser på arbeid og diskusjonen ovenfor, kan følgende fordeler med autovakuum trekkes ut:
Konklusjon
Auto -vakuumfunksjonaliteten til Postgres lar deg utføre vakuumet og analysere tabellene til en database. Selv om man kan vakuum og analysere manuelt, vil det automatiserte vakuumet gjøre begge deler. Denne artikkelen gir detaljert informasjon om bilvakuumfunksjonaliteten til Postgres. Postgres beregner terskelverdier for hver tabell og bestemmer deretter om de skal støvsuge eller analysere den tabellen. Videre har vi gitt Postgres ligninger for å beregne vaksumet og analysere terskel.