Opinion: Open-source database company MySQL has a few options for getting out from under Oracle's thumb. Going back to where it left off with Sleepycat before InnoDB sounds like the best choice.
From the well-duh department last week came the startling newsbrace yourself, this is a real shockerthat MySQL actually plans to do something
about Oracle purchasing its essential storage engine, InnoDB.
"Obviously, because Oracle made that acquisition, we are evaluating options to replace that functionality in some way," said Richard Mason, vice president of MySQL for EMEA (Europe, the Middle East and Africa), as quoted in a Computerworld article.
"Were not at the point yet where we can go public with what that plan is, but we will be shortly."
Mason didnt give any details on what MySQL plans to do to replace InnoDB, which is considered the best of a medley of available storage engines for online transaction processing with MySQL open-source databases. (For what its worth, sources tell me that Mason got taken out to the woodshed by MySQL CEO Marten Mickos, in return for this generous and premature sharing of plans.)
Click here to read more about Oracles complex relationship with MySQL.
What MySQL is likely up to should be fairly obvious to anybody with knowledge of database history, however. To wit: Its extremely likely that theyre hard at work with Sleepycat
to cook up a storage engine to replace InnoDB. Unless technical or business issues arise, theres a good chance well see an announcement early next year.
This is conjecture. Neither MySQL nor Sleepycat, purveyor of the open-source Berkeley DB developers database, cared to be interviewed on the topic.
Open-source database experts werent shy about chiming in, however.
"If I were the MySQL guys, I would be terrified that that engine was owned by somebody like Oracle," said Mike Stonebraker, father of Ingres and PostgreSQL and, more recently, founder and chief technology officer of newly launched StreamBase.
"My terror would be that they would ignore it and simply put it on the shelf, or, worse yet, start charging high license fees for it. It seems like theres only downside," Stonebraker said. "If I were the MySQL guys I would want to get off that storage engine as quickly as possible."
There are two options, Stonebraker said: Go back to Sleepycat, with which MySQL used to have a relationship, or use a storage engine written and contributed by SAP.
Or, of course, build a storage engine itself.
As it is, some two years ago, before InnoDB contacted MySQL, MySQL had been working with Sleepycat to develop a transactional table type for MySQL using Berkeley DB. They got as far as implementing a basic transactional table type, but because Berkeley DB isnt a relational database, it didnt support such things as triggers or constraints.
"It was just the beginning of that kind of work," said Josh Berkus, a core team member for PostgreSQL. "When they put together the stuff with InnoDB, they sort of dropped that."
Its still an option, but the Sleepycat engine is pretty much stuck where it was two years ago, Berkus said.
An experienced development team is key.