MySQL to get injection of Google code
- 24 October, 2007 06:10
My SQL has laid out its software road map through 2009, including some code contributed by Google and security improvements that are due in MySQL 7.0.
Earlier this year Google signed a Contributor License Agreement, which provides the legal framework under which MySQL can include code from another company in its database, MySQL co-founder and Vice President David Axmark said on Tuesday.
Google is secretive about the distributed architecture underlying its services, but it's known to be one of MySQL's biggest users, running hundreds or even thousands of its databases worldwide.
The search company has done a lot of work customizing MySQL to meet its special needs, which include better database replication, and tools to monitor a high volume of database instances, Axmark said in an interview at MySQL's user conference in Paris.
MySQL will include some of those capabilities in future versions of its database, probably in point upgrades to MySQL 6.0, which is scheduled for general availability in late 2008, Axmark said.
Google benefits because the add-ons become part of the official MySQL product and are included in big fixes and future upgrades. MySQL could benefit from some of Google's custom software -- although it requires considerable work by the database vendor.
"It takes time to analyze what's relevant for everyone, what's doable, and how can we work it into a new version," said Kaj Arno, MySQL vice president for community relations. "There's huge potential, but there's also lots of work."
Google develops the add-ons only for the operating system it uses, Linux, so MySQL will need to port, test and document the additions for the 15 or so OSes it supports.
The features in MySQL 6.0 are already fairly set, Axmark said, so the Google code won't appear before version 6.1, due in early 2009. Some Google code is already in the source code for MySQL 4.1, he said, but not in a supported MySQL product.
The companies are in close contact, Axmark said. The Google engineer in charge of its MySQL deployments spent several days at MySQL's internal developer meeting in Heidelberg, Germany, last month. Google has also released source code for some MySQL tools it developed.
At its developer event in Paris, MySQL laid out an unusually long roadmap stretching to MySQL 7.0, which will be generally available in late 2009 and focus on security improvements for enterprise users.
"Many of you have told us you want better security in the database, and we have listened," Robin Schumacher, MySQL director of product management, told developers.
Many of the features are standard in more mature databases from IBM Corp. and Oracle Corp., Schumacher acknowledged in an interview. MySQL positions itself as a low-cost alternative to those products, with less sophisticated features that are sufficient for most users, most of the time.
Schumacher said version 7.0 will support role- and group-based security, which allows administrators to set privileges for groups of users centrally instead of individually. It will also have "transparent data encryption" built into the database, so developers don't have to include it at the application level.
MySQL hopes the security features will win it financial, government and retail customers, some of whom add the capabilities themselves. "If we get the door slammed in our face in an account, this is one of the reasons it happens," Schumacher said.
In the nearer term, MySQL 5.1 is scheduled for general availability in the first quarter next year. Advances include table and index partitioning, which should boost data warehousing performance, and the option of row-based replication, which lets companies create more exact back-up replicas.
The big change in 6.0 will be the availability of MySQL's storage engine, Falcon. The most popular storage engine for MySQL has historically been InnoDB, but two years ago Oracle acquired InnoDB's developer, Innobase. Oracle continued to license the software to MySQL, but MySQL wanted an alternative.
Falcon will do crash recovery and roll-back operations faster than InnoDB because they are done from main memory, Schumacher said, but some InnoDB features, like foreign key support and full-text indexing, won't be supported until MySQL 6.1.
6.1 is due to go into beta in mid-2008 and start to ship widely in 2009. Improvements include better prepared statements and server-side cursors, Schumacher said.
Despite all the buzz a few years ago about native XML (Extensible Markup Language) support, Axmark said he's still waiting for a clear signal about what customers want. Until then it's not a big priority for MySQL, although there are some XML capabilities in 5.1, he said.