If you're doing much updating at all you'll also want to bump up
checkpoint_segments. I like setting checkpoint_warning just a bit under
checkpoint_timeout as a way to monitor how often you're checkpointing
due to running out of segments.
With a large shared_buffers you'll likely need to make the bgwriter more
aggressive as well (increase the max_pages numbers), though how
important that is depends on how much updating you're doing. If you see
periodic spikes in IO corresponding to checkpoints, that's an indication
bgwriter isn't doing a good enough job.
If everything ends up in memory, it might be good to decrease
random_page_cost to 1 or something close to it; though the database
should just rely on effective_cache to figure out that everything's in
If you're on pre-8.2, you'll want to cut all the autovacuum parameters
in half, if you're using it.
Jim Nasby jim(at)nasby(dot)net
EnterpriseDB http://enterprisedb.com 512.569.9461 (cell)
In response to
pgsql-performance by date
|Next:||From: firstname.lastname@example.org||Date: 2007-02-23 17:44:27|
|Subject: Re: Very slow bytea data extraction|
|Previous:||From: Jim C. Nasby||Date: 2007-02-23 17:37:36|
|Subject: Re: Using the 8.2 autovacuum values with 8.1|