BLOGCTA_AQT_20130726_1_Coverage_Profiling_936x110

5 Reasons to Stick with MySQL

mysql

MySQL’s founder is encouraging people to steer away from his creation. Here’s why he’s wrong.

Schism between the worlds of open source and proprietary software is never going to go away as long as open source remains viable and competitive. Eventually, you have a meeting of both worlds. In the case of MySQL, it was when Sun Microsystems purchased the open source database for $1 billion in 2008, a significant multiple given MySQL was about a $50 million business at the time.

MySQL was the cause of the significant hang-up when Oracle tried to acquire Sun in 2009, as MySQL founder Michael “Monty” Widenius staunchly opposed the deal and complained to the European Commission. The whole $7.5 billion deal was held up almost a year because of this one product, which Oracle made major promises to support in return for getting the European Commission off its back.

Monty hasn’t given up his assaults on MySQL, even though he took the entire code base circa the Oracle acquisition, forked it, and made a new product called MariaDB. Monty is welcome to his own opinion, even if he has been on this charge now for four years and looks a little obsessed for it. He’s a successful, respected developer whose complaints can’t be merely dismissed as sour grapes. After all, he got $1 billion out of Sun. He can argue he’s fighting on principle.

Monty has his say, now we have ours. Here are five reasons why you should stick with the open source database. (And for balance, see Rikki Endsley’s article on the reasons you should leave MySQL behind.)

1. There is more MySQL investment and innovation than ever before.

The conventional wisdom in the open-source community is that Oracle wanted MySQL so it could throttle the threat to its RDBMS business. This accusation would make sense if Microsoft was the accused firm, but not Oracle. Its flagship database is far and away more advanced and MySQL was at best going to nibble around the edges.

Since the acquisition, Oracle has increased the MySQL staff and given it a more mature engineering process. Rather than the typical open-source project with people scattered around the planet, engineering and planning is driven from Oracle.

In this time, one developer notes, the company has been making the code more modular. That means short-term work but long-term payback. In MySQL 5.6, they split one of the crucial locks in the MySQL Server, the LOCK_open, which could improve top performance by more than 100%.

Plus, the major storage engine for MySQL is InnoDB, and Oracle acquired InnoDB back in 2005. The InnoDB developers, also located within Oracle, work with the MySQL and Oracle database teams for even better integration.

2. MySQL products remain solid.

MariaDB and open-source advocates complain that new code in MySQL 5.5 doesn’t have test cases and that some of the enterprise features in version 5.5 are closed source. That is a matter of open source purity, of course, and one for any customer to take into consideration.

mysql-databaseStill, when it came out in February, MySQL 5.6 was well-received as a solid, well-performing product with a number of new features. Oracle spent two years releasing Development Milestone Releases (DMR) to the MySQL Community for testing and feedback.

MySQL 5.6 went from 4 CPU threads in prior versions to 64 CPU threads, nearly tripled the number of concurrent connections from the prior version, and saw a four-fold improvement in read speed. There are many more improvements that would take too long to list.

Robert Hodges, president of the database clustering and replication firm, said he has no doubt of the viability of MySQL and has yet to meet a manager who fears MySQL will be ruined by Oracle. The bottom line is that Oracle is growing MySQL into an enterprise-class DBMS.

3. MySQL is designed with a focus on the Web, Cloud, and Big Data

Oracle was not deaf to the trends in computing and put emphasis on the Web, cloud computing, and big data projects. The focus was on both MySQL and MySQL cluster to provide improvements in scale-up and scale-out performance, high availability, self-healing and data integrity, provisioning, monitoring and resource management, developer agility, and security.

To support cloud services, MySQL replication has been greatly enhanced to include a new feature, Global Transaction Identifiers (GTIDs). GTIDs make it simple to track and compare replication progress between the master and slave servers. This makes it easier to recover from failures while offering flexibility in the provisioning and on-going management of multi-tier replication.

In April 2013,  Oracle announced the MySQL Applier for Hadoop. The Applier enables the replication of events from MySQL to Hadoop / Hive / HDFS as they happen and complements existing batch-based Apache Sqoop connectivity.

One of the first firms to embrace MySQL in a Big Data environment is Nokia, which consists of a centralized, petabyte-scale Hadoop cluster that is interconnected with a 100TB Teradata enterprise data warehouse (EDW), numerous Oracle and MySQL data marts, and visualization technologies that allow Nokia’s 60,000+ users around the world tap into the massive data store. And MariaDB? Good luck finding anything related to Big Data there.

4. MySQL Enterprise

MySQL Enterprise was introduced before the Oracle purchase, but Oracle has significantly improved the product. Version 5.6 added High Availability features like Replication, Oracle VM Templates for MySQL, DRBD, Oracle Solaris Clustering, and Windows Failover Clustering for MySQL. It also introduced Enterprise Audit to perform policy-based auditing compliance on new and existing applications.

There’s also the Enterprise Monitor, which continuously monitors your database and advises you of best practices to implement. It also offers Query Analyzer to monitor application performance and Workbench, which offers data modeling, SQL development, and comprehensive administration tools for server configuration and user administration.

5. There are more MySQL projects than before.

Before the acquisition, MySQL AB had 400 employees in 25 countries, with 70% working from home offices. That’s a remarkable bit of juggling, but there are arguments to be had for working together. But as Yahoo CEO Marissa Mayer noted when she put an end to the extensive remote workforce at Yahoo, to get things done, you need to collaborate. That means being in the same building.

A MySQL Architect at Oracle said in his blog that Oracle has new, whole teams working together, some in its giant towers in Redwood Shores, California and other based elsewhere, working on special projects for MySQL. A whole group is working on the clustering software. There is another group working on manageability, a whole optimization team working on database algorithms, another team working on replication (vital for cloud and Big Data), and a whole team making it more scalable.

None of the anti-MySQL arguments are against the product’s performance. Most of Monty’s arguments stem from open source purity, and he has the right to make that complaint. But MySQL was a $75 million company when Sun bought it. Oracle is a $37 billion company. It knows a few things about professional software development and it’s going to do things its own way. It has turned over the basic MySQL code to the GPL, but its own extensions, like Enterprise Edition, are not obliged to be open source.

Monty more or less held up the Sun acquisition for months with his protests to the European Commission. Now he’s throwing stones from the outside. There comes a point when an advocate can become a nuisance and his actions can backfire.

See also:

  • http://www.dissociatedpress.net/ Joe Brockmeier

    Wow, this is a disappointing article. I doubt Oracle PR could have spun it better if they’d written this themselves. You write this as if Monty were the only person arguing against Oracle MySQL (hint: He’s not) and as if MariaDB were the only fork of MySQL (hint: It’s not). You also ignore things that Oracle has done that are not in the interests of the larger community, such as withholding tests, that Oracle is slow to put out security fixes, etc.

    Yeah, Oracle is a big company with more resources … that doesn’t mean it is well-intentioned towards the larger MySQL community or that it’s acting in the best interests of that community.

    You also say “It has turned over the basic MySQL code to the GPL, but its own extensions, like Enterprise Edition, are not obliged to be open source.”

    Oracle didn’t make that licensing choice – MySQL AB did, Sun continued it, and Oracle has more or less continued it. Note that there is *nothing* Oracle can do to take back code already licensed under the GPL and it was a condition of their acquisition of Sun that they continue licensing MySQL under the GPL. So, it’s not as if Oracle is going out of its way to be nice, they’re following the letter of the agreement – nothing more.

    As I understand it, many of the requirements that Oracle is living by now sunset in 2014. I will be curious to see what actions Oracle takes once they expire.

    Anyone that’s betting on Oracle MySQL right now is, in my opinion, taking a fairly large risk of getting burned by Oracle.

  • Guest

    Writer lost all credibility when he played the Microsoft card near the top. Microsoft doesn’t care about MySQL (and in fact gives it away, installs, and starts it via their web platform installer). SQL Server is the fastest growing commercial license database and MySQL is heavily used on Microsoft Azure. That relationship is fine.

    Oracle is one with growth issues.

  • Guest1283219

    @Joe, time certainly will tell. But I have to agree with the author that, as of now, things are fine with MySQL as a product – and some of the complaints do come across as bitterness from someone who SOLD OUT, but still wants to have a voice – Monty should have never sold (or sold to someone with a little more stable footing that Sun – shame on him). The future roadmap – as you point out, starting with decisions to be made in 2014 – will be interesting. And everyone should monitor the situation so as not to get caught without a Plan B.

    But MySQL is faithfully delivering the backend database functionality I require for my iPhone app; and hundreds of thousands of others. To call for people to jump now is premature IMHO.

    • marc castrovinci

      You can jump ship from Oracle MySQL to mariadb or Percona. Functions the same.

  • marc castrovinci

    MySQL 5.6 introduced major performance degradation over 5.5. Do you even use MySQL? ?

    • Hartmut Holzgraefe

      Quite a few wrong result regressions, too … :(

  • Guest

    It’s apparent that the author is not familiar with PostgreSQL, as it is clearly a viable and (for most intents and purposes) better open-source alternative to MySQL. Just because you’re not using MySQL does not mean you’re forced into a proprietary product as your only alternative.

  • dlsniper

    How in the world do you expect to have users for mysql when the beauty of mysql was that it was open and free.

    As for performance, Percona and mariadb are still faster that your praized oracle solution.
    I wonder if you now have money to buy your lollipop because it’s clear that you didn’t wrote the article from a technical point of view. F*cking waste of time.

  • Pingback: 5 Reasons to Stick with MySQL | Moodle בחינוך – יומן מסע טכני

  • Seth @ FBT

    Hey Andy, Certainly agree with you on the fact that MySQL is most suitable for Cloud and Big Data.