Re: Which database part 2 - Mailing list pgsql-advocacy

From Josh Berkus
Subject Re: Which database part 2
Date
Msg-id web-3117340@davinci.ethosmedia.com
Whole thread Raw
In response to Which database part 2  (Kaarel <kaarel@future.ee>)
Responses Re: Which database part 2
List pgsql-advocacy
Kaarel,

> -PostgreSQL is very highly featured, but not as fast and not as
> rugged.

This is incorrect.  Postgresql is slower in the common MySQL
configuration, i.e. read-only database with a high simple,
poorly-written query load.   Postgresql is faster with complex queries,
transactions, and read-write databases.  And both databases are good
for 99.5% uptime, so I don't know where MySQL gets "less rugged" from.
 Frankly, this sounds like FUD from MySQL AB rather than any kind of
real experience.

> -MySQL ran on NT with no fuss, while you needed cygwin and whatnot to
> run PostgreSQL.

True.  We're working on a Windows-native version, but it will not be
ready for a few months.

> -PostgreSQL seemed to require more administration than MySQL.

True as well, although with some databases the admin is entirely at
installation time.  On the flip side, PostgreSQL is more configurable
by a trained DBA than MySQL is.

> -If you need to work with extremely large databases (multi GB) I
> would go with MySQL.  It scales to large files extremely well.

MySQL may scale well (I haven't tried).  PostgreSQL is proven to scale
extremely well; as evidence: the .ORG domain; the previous version of
SourceForge; several databases on the Performance list with up to 2TB
of data.

And if MySQL is so scalable, why are they adopting SAP-DB?

> -There seems to be much less support for PostgreSQL than MySQL, be it
> from books or other users.

Books true, other users false.  And how many books do you need,
exactly?  There are about a dozen for PostgreSQL.

> -MySQL has better support, larger community and better documentation.

The only one of those which is anything but entirely subjective is the
"larger community".  However, I will point out that MS Access has a
very large community; that doesn't mean I'd consider using it.
MySQL has slightly more documentation.  On the other hand, the official
docs are full of marketing by MySQL AB, so choose your preference.

> These are randomly orderered and posted by various MySQL list users.
> I thought it would be nice for part 2 to have PostgreSQL users
> comment these replies.

Glad you gave us the chance.

> I have been reading a little documentation and mail-lists from both
> sides. I noticed one interesting thing about MySQL: there are
> different table types with different properties. Why doesn't
> PostgreSQL have differently oriented/optimized table types?

Because it's an administrative headache, impairs scalability, and is a
violation of relational theory, that's why.

An important tenet of relational theory is that the theoretical
implementation of the database (e.g. the DDL statements) be kept
competely seperate from the physical implemenation of storage.  This
has been part of database theory since 1973.  In my experience, though,
the MySQL development team have little regard for theory (or, for that
matter, international standards), so I'm not surprised they ignored
this.

This abstraction is not just a "purist" approach.  Failure to seperate
the theoretical and physical layers of the database makes it very hard
... if not impossible ... to implement sophisticated schema, such as
enterprise-wide constraints, business rules, foriegn keys, and
sophisticated views.

I think that the MySQL development team has recognized this fundamental
problem with MySQL which is the reason that they are incorporating
SAP-DB code and ideas.

How about a sum up:
PostgreSQL is the DBA's database.
MySQL is the web designer's database.

-Josh Berkus
 Aglio Database Solutions

pgsql-advocacy by date:

Previous
From: "Merlin Moncure"
Date:
Subject: Re: Which database part 2
Next
From: Bruno Wolff III
Date:
Subject: Re: Which database part 2