Need to determine how badly tables need vacuuming

From: Marc Munro <marc(at)bloodnok(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Need to determine how badly tables need vacuuming
Date: 2005-05-11 23:12:11
Message-ID: 1115853131.11144.121.camel@bloodnok.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On a 7.3 production system with limited downtime available, we can
rarely take the time to run vaccuum full. From time to time though,
performance of some of the tables becomes an issue and we have to
perform a full vaccum on those tables.

We'd like to be able to better plan these operations, so:

Is there a query that will return an estimated row count as well as an
estimated unused tuple count for each table? Right now we're figuring
this stuff out by manually by reading the vacuum report. It'd be nice
to have a query on hand that returns a list of tables with more than 30%
unused and more than 100k rows unused.

I envision these columns being returned:

table_name, %unused, tuples, unused_tuples, MB_of_disk

It looks like the estimated row count can be found in pg_class. I can
figure out the size on disk by looking at the physical files. But how
can I figure out the number of dead tuples without actually doing a
vacuum?

Thanks.

__
Marc Munro

Responses

Browse pgsql-general by date

  From Date Subject
Next Message elein 2005-05-12 01:22:25 Re: Need to determine how badly tables need vacuuming
Previous Message Chris Browne 2005-05-11 22:47:13 Re: [GENERAL] Storing database in WORM devices