[ic] Performance of mysql versus postgressql (fwd)

Michael Widenius interchange-users@interchange.redhat.com
Thu Dec 13 10:55:01 2001


Hi!

>>>>> Mike Clark <mclark7@triad.rr.com> wrote:

Mike> Check out these links:

Mike> http://www.phpbuilder.com/columns/tim20001112.php3
Mike> http://www.phpbuilder.com/columns/tim20000705.php3

Mike> They might be a little more unbiased since they aren't published by either
Mike> of the product providers. The best part is that the author does a good job
Mike> of pointing out the pros and cons of each db.

The above benchmark has been debated over and over again :(
Sorry to say, but they author did a very bad job when conducting the
benchmarks and one can't relay on the results of them, either for
MySQL or for PostgreSQL.

Tim Perdue also refused to give us enough information so that we could
try to repeat the benchmarks. He also did not publish enough
information about the system on which he conducted them.  Everything
indicates that Tim did run the benchmark on a Linux computer with a a
broken thread library.

Here is a paper I wrote about this topic a while ago.

---------

Tim Perdue, a long time PostgreSQL fan and a reluctant MySQL user
published a comparison on PHPbuilder
http://www.phpbuilder.com/columns/tim20001112.php3)
 
When we became aware of the comparison, we phoned Tim Perdue about this
because there were a lot of strange things in his results.  For example,
he claimed that MySQL had a problem with five users in his tests, when we
know that there are users with similar machines as his that are using
MySQL with 2000 simultaneous connections doing 400 queries per second.
(In this case the limit was the web bandwidth, not the database.)
 
It sounded like he was using a Linux kernel that either had some
problems with many threads, such as kernels before 2.4, which had a problem
with many threads on multi-CPU machines. We have documented in this manual
how to fix this and Tim should be aware of this problem.
 
The other possible problem could have been an old glibc library and
that Tim didn't use a MySQL binary from our site, which is linked with
a corrected glibc library, but had compiled a version of his own with.
In any of the above cases, the symptom would have been exactly what Tim
had measured.
 
We asked Tim if we could get access to his data so that we could repeat
the benchmark and if he could check the MySQL version on the machine to
find out what was wrong and he promised to come back to us about this.
He has not done that yet.
 
Because of this we can't put any trust in this benchmark either :(

-------

Anyway, it's trivial to write a simple benchmark that just test one
aspect of the database and prove that *ANY* database is the fastest.

To put an end on this question we here at MySQL AB employed a team of
3 persons to work full time in creating an open source suite of single
user and multi user benchmarks that anyone can use to benchmark any
benchmark.  We hope to have something to show within a few weeks...

To ensure that no one can call these benchmark biased we are going to
encourage database developers to add new extensions to the benchmark
suite and suggest new things we should test.  By testing *ALL*
different aspects of the different database this will produce an
accurate view of the strength and weaknesses of all tested databases.

Regards,
Monty