Sven Köhler wrote:

I was very disappointed by Interbase/Firebird. It seemed to me like a
MS-Access: a database-engine that works on regular files


What gave you that idea? Firebird (and InterBase of course) use
a at least 1 file per database, but that's all. Can you define
"regular files"?


My idea of Firebird is the following:
There a library that can access a file and use it as a database.

that very much like using the MS-Jet-Engine which is the backend to MS-Access.

OK, there is a network-server component, but it really has nothing to do
with an enterprise-DB.


There's a server side process waiting for incoming connections
just like with MySQL, MS SQL Server, Oracle etc etc...


Well, the network-server seemed to me like an application that uses the library i mentioned above. It doesn't seem to me like a big application like MySql or MaxDB. In other words: Firebird seems to be light weight DBMS. MySQL and MaxDB have a multi-threaded kernel that maintains its own cache, coordinates locks, etc.
I don't think that Firebird's architecture is like that.



Hmmm....you'll find that the SQL products worth mentioning that are like Access are the following:

SQLite, FoxPro, FileMaker

I could be wrong about the last two on some of these points, but all of the above are accessed via a library and are not wrapped in a server process (FileMaker Server is available, and it seems to
alleviate this). Additionally, you won't get much in the way of write concurrency with the above products (which isn't a problem with SQLite, as it's designed for embedded stuff).


Firebird/Interbase have all those nice things like row-level locking (although it doesn't seem to have multiversioning like InnoDB, PostgreSQL or Oracle), deadlock detection, prepared statements, views,
stored procedures, automatic index management, proper SQL-92 isolation levels and funky caches for indexes, rows and other weird and wonderful metadata.


Here's something you might want to do to see if my research is correct:

1. Install Firebird. Dump massive amounts of data in it and then do something like this: ALTER TABE test_table ADD INDEX(some_column) while the DB is being accessed.
2. Install some FoxPro or Jet application (or ACT! You'll either laugh or cry after trying this with ACT!). Dump lots of data into it and attempt a reindex whle the DB is being accessed.


Guess which DB comes out alive?

Regards,

Chris

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]



Reply via email to