On 21-9-2006 23:49 Jim C. Nasby wrote:
Even with fsync = off, there's still a non-trivial amount of overhead
brought on by MVCC that's missing in myisam. If you don't care about
concurrency or ACIDity, but performance is critical (the case that the
MySQL benchmark favors), then PostgreSQL probably isn't for you.
That depends on the required scalability (both in number of cpu's and in
number of concurrent clients). In our benchmarks MySQL is beaten by
PostgreSQL in a read-mostly environment with queries that are designed
for MySQL, but slightly adjusted to work on PostgreSQL (for MySQL 5.0
and 5.1, about the same adjustments where needed).
But for very low amounts of concurrent users, MySQL outperforms PostgreSQL.
Have a look here:
http://tweakers.net/reviews/646/10
and here:
http://tweakers.net/reviews/638/4
As you can see both MySQL 5.0 and 4.1 start much higher for a few
clients, but when you add more clients or more cpu's, MySQL scales less
good and even starts dropping performance and soon is far behind
compared to PostgreSQL.
So for a web-application, PostgreSQL may be much better, since generally
the only situation where you need maximum performance, is when you have
to service a lot of concurrent visitors.
But if you benchmark only with a single thread or do benchmarks that are
no where near a real-life environment, it may show very different
results of course.
Best regards,
Arjen van der Meijden