Vacuum Analyze - Mailing list pgsql-novice

From Michael Wallach
Subject Vacuum Analyze
Date
Msg-id B3CF902F-7060-4A01-A5C2-8FF0C5511A1C@gmail.com
Whole thread Raw
Responses Re: Vacuum Analyze
List pgsql-novice
Hi,

Having issue with DB where we see SQL get slow, not sure what is causing but queries that have been running sub second jump to 2-5 secs. Seems when we manually run VACUUM ANALYZE query perf immediately improves. To add to this we have a “job” to trigger VACUUM ANALYZE to run every day but despite this, some acton against DB results in performance regarding that is only fixed by again running VACUUM ANALYZE.

What I’m trying to understand is what should I be looking at as before/after in the tables to determine what exactly VACUUM ANALYZE might be affecting to identify cause, what is corrected in DB such that perf improves? The DB is being exercised by custom apps via API so not sure what is happening that is causing DB to quickly become non-performant?

Have run this query but not sure what in results might explain why after vacuum perf is better, bad before. Also, anything else in DB we could look at as before/after?
 
SELECT relname, 
       n_tup_upd  as "updates", 
       n_tup_del  as "deletes", 
       n_live_tup as "live_tuples", 
                   n_dead_tup as "dead_tuples", 
                   trunc(100*n_dead_tup/(n_live_tup+1))::float "ratio%",
       to_char(last_vacuum, 'YYYY-MM-DD HH24:MI:SS') as vacuum_date,
       to_char(last_analyze, 'YYYY-MM-DD HH24:MI:SS') as analyze_date,
       to_char(last_autovacuum, 'YYYY-MM-DD HH24:MI:SS') as autovacuum_date,
       to_char(last_autoanalyze, 'YYYY-MM-DD HH24:MI:SS') as autoanalyze_date
FROM   pg_stat_all_tables 
ORDER BY last_autovacuum; 

Mike W

pgsql-novice by date:

Previous
From: Simon Connah
Date:
Subject: Database migrations
Next
From: Laurenz Albe
Date:
Subject: Re: Vacuum Analyze