Subject Re: Firebird Usage Load Problem
Author Adam
Hi Maurice,

Is MySQL ACID complient yet? It is slowly getting there, and most of
these issues have probably been resolved (but it was only 2 years ago
I was investigating MySQL, Postgres, FB and IB).

***AT THAT TIME***, MySQL lacked (<-- My disclaimer)

Transaction support, meaning you could not treat consequtive queries
as an atomic operation. Any failure mid operation would leave your
data in an inconsistent state.

Enforcement of cascading constraints. You could define a foreign key
on a field, but it did not care if there wasn't a matching record in
the parent table.

Those stored procedures and triggers, um, weren't there, which forced
application logic to handle data integrity.

Isolation was handled using locks which depending on the table type
of MySQL may be a larger problem. Firebirds locking mechanism allows
readers to not be impacted by writers and vice versa, leading to
fewer lock contentions.

Durability. Well as long as the crash didn't happen while someone was
doing something your database should come back up in a consistent
state, but would you really take that risk?

Atomicity -> Failed
Consistency -> Failed
Isolation -> Failed
Durability -> guesses?

Now let me clarify that scathing unprovoked attack on MySQL. MySQL is
a nifty little db engine that beats the pants of most desktop
databases in performance and features. Inside a LAMP framework, it
allows relatively modest hardware to run small web site based
applications well enough, but you certainly could not put it in the
same league as Oracle or DB2.

There was quite an interesting article on Borland's website comparing
MySQL and Interbase, much of which is applicable to Firebird as well
that is certainly worth the read. While it also includes features of
IB7 etc that do not (yet) exist in Firebird, and it misses some
features of Firebird that do not (yet) exist in Interbase, it is
important to understand how these tools differ in architecture and
intended use.

Just because you can turn a cordless drill around and use it to bash
a nail into a wall, doesn't mean that a hammer is not needed.

Adam