Re: Autovacuum Improvements

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Joris Dobbelsteen <Joris(at)familiedobbelsteen(dot)nl>
Cc: Chris Browne <cbbrowne(at)acm(dot)org>, pgsql-general(at)postgresql(dot)org
Subject: Re: Autovacuum Improvements
Date: 2007-01-09 02:42:40
Message-ID: 20070109024240.GB2942@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Joris Dobbelsteen wrote:
> Why not collect some information from live databases and perform some
> analysis on it?

We already capture and utilize operational data from databases: for each
table, how many tuples there are, how many tuples have been inserted,
deleted, updated. We already analyse it to determine if a table needs
vacuuming or not.

But that data alone is not sufficient. You (the DBA) have to provide
the system with timing information (e.g., at what time is it appropriate
to vacuum huge tables). We also need to extend the system to be able to
vacuum multiple tables in parallel, but the DBA needs to give some
constraints: for example that you don't want more than 3 vacuum
processes running at any time.

Capturing data about someone's database is not going to help someone
else's vacuuming strategy, because their usage patterns are potentially
so different; and there are as many usage patterns as Imelda Marcos had
shoes (well, maybe not that many), so any strategy that considers only
two particular pairs of shows is not going to fly. We need to provide
enough configurability to allow DBAs to make the vacuumer fit their
situation.

--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Bruce Momjian 2007-01-09 03:24:39 Re: Postgres Differential backup
Previous Message Tom Lane 2007-01-09 02:39:05 Re: Questions about horizontal partitioning