Google swaps out MySQL, moves to MariaDB
'They're moving it all,' says MariaDB Foundation headman
Updated Google is migrating its MySQL systems over to MariaDB, allowing the search company to get away from the Oracle-backed open source database.
The news came out at the Extremely Large Databases (XLDB) conference in Stanford, California on Wednesday, one month after El Reg reported that Google had assigned one of its engineers to the MariaDB Foundation. News of the swap was not an official announcement by Google, it came out during a presentation by Google senior systems engineer Jeremy Cole on the general state of the MySQL ecosystem.
It turns out that far from being a minor initiative to keep MariaDB alive, Google is actively patching and upgrading MariaDB 10.0 to be fit enough so that Google can migrate all of its thousand-plus MySQL instances onto the technology.
"Were running primarily on [MySQL] 5.1 which is a little outdated, and so we're moving to MariaDB 10.0 at the moment," Cole said in a presentation he gave on the general state of the MySQL ecosystem.
Google has been working with the MariaDB Foundation since the "beginning of the year" to help ease the migration, SkySQL chief executive Patrik Sallner, told The Register on Thursday. "They are moving many of their applications that have been previously working on MySQL off to MariaDB. We've also been collaborating with them to develop features in MariaDB to enable the migration. It's a great reference for us."
Cole said that the migration involves thousands of MySQL servers. We asked Google for more information, and the company sent us a statement which said: "Google's MySQL team is in the process of moving internal users of MySQL at Google from MySQL 5.1 to MariaDB 10.0. Google's MySQL team and the SkySQL MariaDB team are looking forward to working together to advance the reliability and feature set of MariaDB."
When we asked Sallner to quantify the scale of the migration he said, "They're moving it all. Everything they have. All of the MySQL servers are moving to MariaDB, as far as I understand."
By moving to MariaDB, Google can free itself of any dependence on technology dictated by Oracle – a company whose motivations are unclear, and whose track record for working with the wider technology community is dicey, to say the least. Oracle has controlled MySQL since its acquisition of Sun in 2010, and the key InnoDB storage engine since it got ahold of Innobase in 2005.
MariaDB is an open source database backed by Monty Widenius, who spearheaded the original development of MySQL. It is designed to replace Oracle-backed MySQL. Right now, Google has about five people working part-time on MariaDB bug fixes and patches, our sources tell us.
Google has been operating its own heavily modified version of MySQL since version 4.0, and the Chocolate Factory now runs on a custom MySQL 5.1 build, Cole said in his talk at XLDB. But now Google is moving to MariaDB 10.0. This version of MariaDB is roughly equivalent to MySQL 5.6, so a lot of Google's work has revolved around making sure that the changes that have occurred since 5.1 are well understood.
We asked Cole why Google would shift from MySQL to MariaDB, and what the key technical differences between the systems were. "From my perspective, they're more or less equivalent other than if you look at specific features and how they implement them," Cole said, speaking in a personal capacity and not on behalf of Google. "Ideologically there are lots of differences."
Google's widespread MariaDB push may be an attempt by the Chocolate Factory to shift developer allegiance from MySQL to MariaDB, and in doing so dilute Oracle's influence over the open source database ecosystem.
"I'd really love to see a single MySQL community, I think that's more or less impossible under Oracle, I don't know if that's possible under MariaDB," Cole said.
Though more attention has been paid to Google's flashier next-generation SQL systems such as Spanner and the back-to-the-future F1 database, Cole confirmed to El Reg that MySQL is running across "thousands of instances" at Google upon legions of flash-based servers. And it's on the move.
"It's been in different roles in different times," he said. "These days I think it's the best fit in very low-latency, multiple-geography applications, but ones where you don't necessarily need equal access for those geographies."
Google's MySQL also has the ability to "failover between multiple data centers and have read access in all data centers," he said.
This differs with Google's famed "Spanner" system, which allows for global access to data with strong consistency properties through the use of GPS-transceivers and atomic clocks to allow for writing globally without having to check locally.
"[Spanner is] able to provide more or less a global view of a dataset," Cole says. "They do failover much smaller. We're failing over an entire master, they're failing over one small shard of something that the customer didn't even know was sharding. The cost of operation is different."
Google is not alone in its shift to MariaDB: Red Hat is ditching MySQL for MariaDB in Red Hat Enterprise Linux 7.
Oracle had not responded to a request for comment at the time of writing. ®
An earlier version of this story said that Patrik Sallner was leader of the MariaDB Foundation. This is not the case, though SkySQL is one of three corporate members of the Foundation, and is a specialist MariaDB company since its acquisition of Monty Widenius's company Mont Program AB earlier this year. The MariaDB Foundation's interim chief executive is Simon Phipps.
"We've known for some time that Google has been working in the community, we're delighted it's now public knowledge," Phipps tells us.
We have also clarified that Mr. Cole was speaking in a personal capacity and not on behalf of Google when discussing potential reasons for the shift.