> if u imply that you'd better leave huge amounts of memory to the OS
buffer
> cache rather than give them to the DB buffer cache then I strongly
disagree.
Good, because that wasn't exactly what I was implying. I was implying
that increasing either disk cache or shared buffers to ridiculous limits
*at the expense of the other* can potentiall be wasteful and even
counter-productive.
> A good on-topic reading is "Avoid Buffered I/O" by Steve Adams
available at
> http://www.ixora.com.au/tips/avoid_buffered_io.htm
Thanks, if I ever switch from PG to Oracle, I'll keep that in mind.
Now, for a little bit of REAL WORLD experience.
Once you've got your sort memory and shared buffers to certain levels,
increasing them isn't going to help you. In my case, I increased them
until I stopped seeing performance increases, then quadrupled them anyway.
Increasing them further is *not* going to help me.
However, keeping the database in memory cache *does* help me. Even
under very significant load (4 processors going full-tilt!), the disk
lights only blink *occasionally*, and that's a good thing. Disk
bottlenecks really suck.
> also, I don't want to "always keep the *entire* database in disk
cache" - I
> want to keep cached only the frequently accessed parts of the data
Why? Do I/O bottlenecks excite you? If you have the RAM, not using it
is wasteful. Disks are a place to store data for when the power goes out,
not where you want to do your database work from.
steve