Thursday, January 04, 2007

Falcon, the new MySQL Storage Engine

While taking a quick look at the newly released docs for Falcon, the new storage engine for the MySQL database from MySQL AB (and this is important, as actually InnoDB and the now ditched BDB storage engines for MySQL database are from Oracle) I noticed two "strange" things, at least to someone thinking of large databases running on dedicated hardware.
First of all the data storage, chapter 14.6.5.1. Falcon data file and data structures reads:

A single Falcon database file stores all record data, indexes, database structure and other information. ...

This doesn't sound like a good idea for me as it's better to keep indexes and data separated on different disks and something like Oracle's implementation of tablespaces and the ability to assign indexes and data to different tablespaces hosted on different disks is important (I noticed that in some cases up to 40% of the size of my datawarehouse is made up of indexes).

Then data compression, chapter 14.6.5.6. Data Compression reads:

Data stored in the Falcon tablespace is compressed on disk, but is stored in an uncompressed format in memory. Compression occurs automatically when data is committed to disk.

won't this compress/uncompress loop badly affect bulk load speed and concurrency (forced writes ...)?
Hope the engine will be made available in binaries quickly and proper benchmarks will clear any doubt.

3 comments:

Anonymous said...

It goes back to the firebird scalability issue. The more data in the firebird database the slower firebird is.

You have to backup and restore twice a week to get some of the performance back. MySQL is a truck load faster than firebird for what it is worth.

Anonymous said...

"The more data in the firebird database the slower firebird is.

You have to backup and restore twice a week to get some of the performance back"

Not quite true. I have more applications (an ERP and a CRM among others) and didn't made a restore of them to "get the performance back". Perhaps you need to configure/tune your Fb?

pabloj said...

I agree with the second poster, those kind of problem are generally due to lack of tuning and/or file fragmentation (on Windows) as Microsoft filesystems are prone to fragmentation.