There’s been a lot of buzz about MariaDB lately. Within the OpenShift Community, we’ve seen quite a bit of uptake since making the new MariaDB cartridge available for OpenShift. Recently, Fedora 19 switched to MariaDB, and that’s usually a good hint of what’s to come in the next RHEL release (although there's no official announcement yet).
MariaDB is basically a drop-in replacement for MySQL, one of the most popular databases used by developers throughout the world. Oracle gained control of the MySQL software distribution when it acquired Sun Microsystems in 2010. Shortly thereafter, Michael "Monty" Widenius, MySQL's founder forked and created MariaDB as the MySQL clone.
However, there’s still a lot of education that needs to be done to get developers to start saying “MariaDB” whenever they think “MySQL”. Many developers don’t know the history and are unaware of the issues surrounding ongoing support for the development & maintenance of MySQL.
So I was quite pleased when I got the chance to sit down with in person at OSCON last month with MariaDB’s Michael Widenius aka “Monty” the man behind MySQL & now MariaDB, and ask him for a quick history lesson on how MariaDB came to be and why developers using OpenShift should chose MariaDB over MySQL.
Monty’s Mantra: “Save the People, Save the Products”
Diane: Can you tell us a bit about why you started up MariaDB?
Monty: I am doing this for two reasons, to quote from Heroes - “Save the People, Save the Products”. To understand, you must first know a little history: When MySQL was bought by Sun, I thought that was the perfect thing. I believed that we could actually help Sun to do open source even better. I thought that was match made in heaven. We couldn’t know then that Oracle would buy Sun. Oracle made it very clear to the EU Commission that they will not buy Sun if they didn’t get MySQL. According to Oracle, MySQL was one of the integral most fundamental pieces of technology that they needed. They never said really why. The official reason given was they needed to compete with Microsoft.
The main thing when Oracle then announced that they will buy Sun and MySQL, it didn’t look open source friendly and the core MySQL developers didn’t trust Oracle. They didn’t see careers for themselves with Oracle. So, they just said that they will leave and I knew that the only way you can kill an open source project is if you lose the people who are developing it. The thing is that usually in a case like this people don’t care. They go to the next project and say “okay that failed, everythings out, move on”. But MySQL is something I spent 20 years working for and these are my friends, I didn’t want them to just disappear I wanted them to provide workplace for life. So I hired all the core people. We were basically from day one we were close to 20 people.
Diane: When was all this happening?
Monty: So then with the whole core engineering group reassembled, the best of the best, we started with MariaDB in 2009 immediately after the Oracle announced their position. Since then, we have done 4 major releases and got a lot of uptake but we didn’t get noticed until December last year after launching the MariaDB Foundation - That changed everything.
Diane: Why did starting the MariaDB Foundation change everything?
Monty: Because MySQL was so popular, I thought that we can actually make enough money to support many people just by doing development on MariaDB. That wasn’t true. During the Oracle acquisition process - everyone was thinking MySQL support costs would increase. So what happened just before the acquisition was that everybody basically who had MySQL support contract bought a new contract from Sun for 3 or 4 years, just to protect against this increase. Which means that I didn’t have a single customer because everybody was using MySQL who were prepared to pay said: “come back after 3 or 4 years. And that’s not a good place to start the business.
I did found SkySQL on the side after couple of years so everybody knew that they could have a chance to get some support because this 3 to 4 year period is starting expire now. We are profitable but all the money was spent on development. So we are working as a “non-profit”, but we are really not a “non-profit” so people are not prepared to work with us or they donate money to support us. Creating the MariaDB Foundation really changed everything.
The WikiMedia Turning Point
Diane: And then what happened?
Monty: At the same time, I went to the Wikimedia Foundation and said “Hey, we have a special version of MySQL. I know that you don’t have money, but what I can do is give you free support if you move off of MySQL. I will support you for free if you give MariaDB a try, and participate in the MariaDB Foundation.” So I said, ‘sponsor it by moving it’ and in December they moved.
Diane: Now you had the foundation and Wikimedia onboard, so what happened next?
Monty: Suddenly there were lots of people who realized “Hey MariaDB is actually real, it works - If it works for Wikimedia it will work for us!”. Wikimedia helps since when one comes, everybody else comes. There has been an uphill trend since then. And then we started to get distributions adopting us, like Fedora and Debian. In part, some of this uptake was because Oracle stopped doing test cases. They also stopped working with distributions. They clearly don’t want to support MySQL in any way. They have closed all development and people are starting to realize that. And I was really happy that MariaDB is not just coming into distributions side by side with MySQL, but that MariaDB is becoming the new default.
So that means by the end of this year, we will have a some 5 to 10 million users.
Diane: That’s an impressive adoption gain for any open source project.
Monty: Yes, it’s great to see. And now, the “icing on the cake” is that in these past couple of months Google officially told us that their new SQL service will be based on MariaDB. So that also means that not just my group is developing MariaDB, we also have Google; we have people in Taobao and the Alibaba group. That’s why I was in China recently. So this is all evolving kind of rapidly, Taobao hopefully will move 10,000 servers to MariaDB.
Making the Shift to MariaDB
Diane: Are there other ‘technical’ reasons why developers should switch systems from MySQL to MariaDB?
Monty: One thing that stands out is that we have done a really good thing in replication in 5.5 compared to MySQL 5.5. For a busy server it is typically 5 times faster. You don’t have to do anything, and you get 5x performance. MySQL made a fix for this in 5.6, but poorly, so that there are lots of bug reports, whereas ours works perfectly. We will have a 5.6 release which will include parallel replication, which will for the first time make slaves as fast as the master. That’s the killer feature for our next version. Usually, when people hear about those two features, they just switch. Getting a 5 times performance in 5-5, that’s enormous.
The key thing is that, because we have the original team who reviews the code; the whole team is pretty sure we have better, faster, and more secure codebase. We fix a lot of things that Oracle doesn’t. When Oracle can’t fix a bug, they often disable the related feature entirely. We fix it properly.
In addition to the standard storage engines, we’ve added support for Aria, XtraDB, PBXT, FederatedX, OQGRAPH, Sphinx SE, IBMDB2I, and Cassandra which are now included with MariaDB Source and Binary packages. We are working on adding other “noSQL” storage engines into MariaDB. So, there are plenty of good reasons to make the switch - and in basically in all practical applications, you can switch one minute and everything just works.
Diane: So what’s the feedback been like?
Monty: I have been at lots of conferences and I also ask: “So have you have a single problem when moving from MySQL?” and not one person stands up. I have done this for 5,000 users or so, in different conferences; so I am pretty confident that we are doing something right.
Diane: I’m sure that our developers agree. I’m guessing that this post will inspire quite a few people to switch over to our new MariaDB cartridge for all of their OpenShift projects.
Diane: Sounds like a plan, we’re happy to have the MariaDB community working with the OpenShift community on the MariaDB Cartridge too!
If you'd get involved in the MariaDB community, be sure to check out the MariaDB Foundation site for the latest features and ways you can participate.