[Zope] MySQL, PostgreSQL, etc.

Albert Langer Albert.Langer@Directory-Designs.org
Thu, 15 Feb 2001 22:24:19 +1100


If you *really*:

a) don't need transactions now

and

b) won't need transactions ever

then MySQL could be fine.

However Postgresql is both both dramatically faster and dramatically more
stable for most "high load" applications such as you are interested in:

http://apachetoday.com/news_story.php3?ltsn=2000-08-14-008-01-PR-MR-SW

As for "easy to use", greater SQL compliance can only be easier than less
compliance.
Just don't use what you don't need.

BTW most people who think they don't need transactions now can't be certain
about b) and many are simply wrong about a). It is *much* simpler to install
just one DBMS than have to switch or add another later.

Checkout:

http://openacs.org/philosophy/why-not-mysql.html

The above link provides a less standard and more polemical but perhaps also
more accurate alternative comparison between MySQL and PostgreSQL from a
PostgreSQL perspective.

It's quite old now and the reviews above and below give some precise
benchmarks.

Although SQL applications that are stable under high load and easy to use
but do not need
transactions certainly do exist - eg read only - they are rather less common
than applications that don't need SQL at all or that do need transactions
(or both eg using Zope ZODB). Generally life is much harder and much less
stable with an SQL application if you cannot rely on the DBMS to maintain
database integrity - which is *precisely* what not having "transactions"
means. There often isn't all that much point to SQL if you cannot be sure
the relationships are *always* what they are supposed to be. Simple DBM
files may be all you need for an application that would be suitable for
MySQL. By definition, true SQL, and indeed any DBMS  *requires* support for
transactions. If you *really* don't need transactions then you don't need a
DBMS.

I recommend careful study of whether you *really* don't need transactions
after reading above article, including the discussion of it (which includes
plenty of pro MySQL polemics).

It isn't called the "acid" test for no reason.

MySQL is far less stable than Postgresql under high load:

http://www.phpbuilder.com/columns/tim20000705.php3?page=2

That was a review favorable to MySQL, subsequently withdrawn by the update
below,
which confirms that the latest PostgreSQL is faster as well as more stable.

http://www.phpbuilder.com/columns/tim20001112.php3?page=3

-----Original Message-----
From: zope-admin@zope.org [mailto:zope-admin@zope.org]On Behalf Of
Donald Braman
Sent: Thursday, February 15, 2001 6:09 AM
To: zope@zope.org
Subject: [Zope] MySQL, PostgreSQL, etc.


Hello!

I'm in a situation that I'm sure many are familiar with...choosing between
MySQL or PostgreSQL. My main goals are stability under high load and ease of
use. I don't need transactions. I know the standard comparison: MySQL is
faster, simpler, and more popular, while PostgreSQL is slower but is more
fully SQL standards based, handles transactions, etc. Are these generally
accurate descriptions?

I'm wondering what people who have used either (or both!) think about using
these (or other databases) in conjunction with Zope. Are there any special
cases where one or the other works better or worse with Zope?


Donald Braman
donald.braman@yale.edu


_______________________________________________
Zope maillist  -  Zope@zope.org
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists -
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )