Posted on 4 Comments

Falcon at MySQL Conference

I like this item on the MySQL Conference program: Falcon for InnoDB Users. What I find of specific interest is the abstract:

Falcon is MySQL’s new transactional storage engine, currently in beta. Falcon, however, is not InnoDB and was not designed as a drop in replacement.

The talk will discuss the architectural and philosophical differences between Falcon and InnoDB; some of the operational differences, where users can expect to see significant performance differences; and the problems that may be encountered when switching between InnoDB and Falcon.

That’s the plain truth, and it’s very significant. Falcon is indeed not a [drop-in] replacement for InnoDB. Earlier on it was kind-of presented that way by MySQL Marketing, basically responding to the Oracle acquisition of InnoDB. Strategically, yes Falcon is fully owned by MySQL, so that was important to push as a point. But simplification can hurt, as technically Falcon works quite differently.

Also, Falcon is not (yet) as mature and it will take a fair while longer before lots of critical sites start relying on it – regardless of its development status. It’s very important that lots of people use it (unlike wine, software does not mature by lying around ;-). In practical terms: storage engine maturity is achieved over time while being deployed in an increasing number of places.

The one quirky thing about the current state of Falcon, already noted by Ronald Bradford, is that the Falcon code is now considered beta, yet integrated in 6.0 which is in alpha. Could it be made fully pluggable, and more version independent? Then perhaps it can even be used in 5.1 and run on its own merit. This should also be better for getting a higher number of deployments. I wouldn’t start using 6.0 for anything now, but I might consider trying Falcon somewhere if it were pluggable ino a 5.1, at least in the near future.

Posted on 4 Comments

4 thoughts on “Falcon at MySQL Conference

  1. this, my friend, is why we have virts 🙂

  2. Ehm, of course I can run different MySQL versions on a machine, don’t even need virtual machines for that… but that doesn’t give me Falcon in 5.1 – and I can’t join between different servers except perhaps through Federated, that would defeat most performance reasons and also mess with other operational tests.
    Or did you mean something else?

  3. I was mostly referring to the ability to sandbox the Falcon/5.1 tests without having to break a production environment. If it were to work, then the storage engine and database from the sandbox could be migrated to the production system.

  4. But I just want this engine, not the rest of 6.0. Or at least, have the option of not having these two coupled. Falcon might stabilise at a different rate from 6.0 alpha server.

Comments are closed.