Greg Stark <stark@mit.edu> wrote:
> Daniel Farina <daniel@heroku.com> wrote:
>> You probably are going to ask: "why not just run ANALYZE and be
>> done with it?"
>
> Uhm yes. If analyze takes a long time then something is broken.
> It's only reading a sample which should be pretty much a fixed
> number of pages per table. It shouldn't take much longer on your
> large database than on your smaller databases.
On a small database:
cc=# analyze "CaseHist";
ANALYZE
Time: 255.107 ms
cc=# select relpages, reltuples from pg_class where relname =
'CaseHist';relpages | reltuples
----------+----------- 1264 | 94426
(1 row)
Same table on a much larger database (and much more powerful
hardware):
cir=# analyze "CaseHist";
ANALYZE
Time: 143450.467 ms
cir=# select relpages, reltuples from pg_class where relname =
'CaseHist';relpages | reltuples
----------+------------- 3588659 | 2.12391e+08
(1 row)
Either way, there are about 500 tables in the database.
-Kevin