On Thu, 2010-08-12 at 11:59 +0530, Ma Sivakumar wrote:
> What does a migrating PHP/MySQL user do? If MySQL performs fast just
> out of box (I have not used MySQL), what is different there? Do MySQL
> defaults give better performance? How do they arrive at those
> defaults?
I have been watching this thread off and on and I think this is the
question that many are kind of ignoring. With deepest respect to Greg
Smith who frankly knows more about intricacies PostgreSQL performance
than I would ever care to, I think he is looking at this wrong.
"Can we just say in the docs say 25% of memory to shared_buffers"
Yes, in fact we can. With the caveat of Windows, the reality is this
isn't going to hurt nearly as much as a untuned version of PostgreSQL
will.
Now work_mem is an entirely different issue. Frankly it doesn't need to
be changed, even from the default. *IF* you spill over it will be on
specific larger queries that you can then tune.
We should and can put in the docs a table that says:
GOOD PERFORMANCE IS ALWAYS RELIANT ON PROPER HARDWARE, DATABASE DESIGN
AND APPLICATION ARCHITECTURE. THIS TABLE IS A HINT ONLY. YOU WILL LIKELY
HAVE TO TUNE BEYOND THIS.
shared_buffers = 25% of available memory
work_mem = 2-4MB (test using explain analyze)
effective_cache_size = 50-60% of available memory INCLUDING
shared_buffers
etc....
Joshua D. Drake
--
PostgreSQL.org Major Contributor
Command Prompt, Inc: http://www.commandprompt.com/ - 509.416.6579
Consulting, Training, Support, Custom Development, Engineering
http://twitter.com/cmdpromptinc | http://identi.ca/commandprompt