Re: A question about Vacuum analyze

From: Christopher Browne <cbbrowne(at)acm(dot)org>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: A question about Vacuum analyze
Date: 2006-02-18 02:42:53
Message-ID: 87wtfttmj6.fsf@wolfe.cbbrowne.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Quoth emilu(at)encs(dot)concordia(dot)ca (Emi Lu):
>> no. the suggestion was that a VACUUM is not needed, but that an
>> ANALYZE might be.
>
> Thank you gnari for your answer. But I am a bit confused about not
> running vacuum but only "analyze". Can I seperate these two
> operations? I guess "vacuum analyze" do both vacuum and analyze. Or
> "EXPLAIN ANALYZE" can do it for me?

EXPLAIN, ANALYZE, and VACUUM are different things; ANALYZE gets used
in two different contexts...

1. VACUUM is what cleans dead tuples out of tables.

e.g. VACUUM my_table;

2. VACUUM ANALYZE cleans out dead tuples and recalculates data
distributions

e.g. VACUUM ANALYZE my_table;

3. EXPLAIN describes query plans

e.g. EXPLAIN select * from my_table;

4. EXPLAIN ANALYZE compares query plan estimates to real results

e.g. EXPLAIN ANALYZE select * from my_table;

5. ANALYZE recalculates data distributions (as in 2, but without
cleaning out dead tuples).

e.g. ANALYZE my_table;

Pointedly, EXPLAIN ANALYZE is entirely distinct from ANALYZE and
VACUUM ANALYZE...
--
let name="cbbrowne" and tld="cbbrowne.com" in name ^ "@" ^ tld;;
http://linuxdatabases.info/info/slony.html
Rules of the Evil Overlord #218. "I will not pick up a glowing ancient
artifact and shout "Its power is now mine!!!" Instead I will grab some
tongs, transfer it to a hazardous materials container, and transport
it back to my lab for study." <http://www.eviloverlord.com/>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Christopher Browne 2006-02-18 02:44:50 Re: EnterpriseDB
Previous Message Ragnar 2006-02-17 23:08:42 Re: Converting an ASCII database to an UTF-8 database