Re: Performance query about large tables, lots of concurrent access - Mailing list pgsql-performance

From Heikki Linnakangas
Subject Re: Performance query about large tables, lots of concurrent access
Date
Msg-id 46796695.3080403@enterprisedb.com
Whole thread Raw
In response to Re: Performance query about large tables, lots of concurrent access  (Karl Wright <kwright@metacarta.com>)
List 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

pgsql-performance by date:

Previous
From: Karl Wright
Date:
Subject: Re: Performance query about large tables, lots of concurrent access
Next
From: Alvaro Herrera
Date:
Subject: Re: Performance query about large tables, lots of concurrent access