From: | Heikki Linnakangas <heikki(at)enterprisedb(dot)com> |
---|---|
To: | Karl Wright <kwright(at)metacarta(dot)com> |
Cc: | Francisco Reyes <lists(at)stringsutils(dot)com>, Alvaro Herrera <alvherre(at)commandprompt(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-performance(at)postgresql(dot)org |
Subject: | Re: Performance query about large tables, lots of concurrent access |
Date: | 2007-06-20 17:40:37 |
Message-ID: | 46796695.3080403@enterprisedb.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
Karl Wright wrote:
> So, I guess this means that there's no way I can keep the database
> adequately vacuumed with my anticipated load and hardware. One thing or
> the other will have to change.
Have you checked your maintenance_work_mem setting? If it's not large
enough, vacuum will need to scan through all indexes multiple times
instead of just once. With 16 GB of RAM you should set it to something
like 2GB I think, or even more.
> Is the VACUUM in 8.2 significantly faster than the one in 8.1?
Yes, in particular if you have a lot of indexes. Scanning the indexes
was done in index page order, which in worst case means random I/O, and
we used to do an extra scan of all index pages to collect empty ones.
Now it's all done as a single sequential pass.
> Or, is
> the database less sensitive performance-wise to delayed VACUUM commands?
No.
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2007-06-20 17:53:00 | Re: Performance query about large tables, lots of concurrent access |
Previous Message | Karl Wright | 2007-06-20 17:28:08 | Re: Performance query about large tables, lots of concurrent access |