WaffleGrid roadmap changes… a storage engine?

If you followed the recent blog posts by Matt, you have noticed the nice performance. This confirms that the Wafflegrid concept is a good one and we need to continue its development and improve it.

You have also probably noticed there has been no recent WaffleGrid release, the reason is that we were thinking about how to distribute WaffleGrid. The current “patch” like approach is, let’s say, pretty poor. Another approach would be to work on the whole tree of MySQL or Drizzle but then, it would be pretty hard for someone to use InnoDB and WaffleGrid at the same time, not ideal either.

Hey…. MySQL has a plugin interface for storage engines, why not just add a WaffleGrid storage engine. It would be much easier to add WaffleGrid to MySQL and Drizzle and we would also be far less impacted by new releases of the databases. So, the next release will be a branch of InnoDB plugin and from there, integrating to Drizzle will be also straightforward.

Why stop the fun here… There are other storage engines using caches that could benefit from the same concept. A WaffleGrid version of PBXT? Falcon?

Yves

About Yves Trudeau

I work as a senior consultant in the MySQL professional services team at Sun. My main areas of expertise are DRBD/Heartbeat and NDB Cluster. I am also involved in the WaffleGrid project.
This entry was posted in mysql, Waffle Grid, yves. Bookmark the permalink.

6 Responses to WaffleGrid roadmap changes… a storage engine?

  1. Tim S. says:

    Having it as a pluggable engine would be ideal. It (in theory) decouples the development of it with MySQL and keeps there from being yet another MySQL fork. Might also allow for greater adoption.

    That said, you might also want to distribute a version of MySQL with Waffle Grid compiled in for those who do not want to bother with plugins. That way everybody wins :)

    It’s a pretty exciting project so it’s nice to see it maturing! Can’t wait to see what’s in store with the plugin!

  2. Yves Trudeau says:

    I don’t exclude distributing a binary version, maybe later when waffleGrid will be more mature.

  3. Arjen Lentz says:

    It depends on how much work you want to put into this, because once people start relying on it, they won’t be particularly happy if a bugfix upstream is not present in your version of the code.
    There’s a good reason OurDelta works with patches.
    A tarball is not a product.

  4. Yves Trudeau says:

    Maybe I don’t understand well how bzr works but I believe it should fairly easy to apply bugfix. The problem with the patch is that we change InnoDB so people cannot used it separately of WaffleGrid. I will think about your argument.

  5. Great idea! I would be glad to help with a PBXT based version any way I can.

    Patches to make PBXT work with WaffleGrid are welcome! PBXT is on launchpad, so all you need to do is push a tree… :)

  6. Yves Trudeau says:

    PBXT is on my TODO list… I already grab the branch from launchpad. I will probably sent you questions in a few weeks :-)