Major MySQL Revision Takes on NoSQL

Oracle this week announced the general availability of MySQL 5.6. The latest release of the open source relational database management system (RDBMS) takes on a growing field of NoSQL competitors, such as MongoDB, CouchDB, and Cassandra, with features and enhancements aimed at improving query execution times, availability, and scalability.

This release promises to crank up query execution times with pre-execution subqueries. Diagnostics are improved with EXPLAIN for INSERT, UPDATE, and DELETE operations, and the ability to output in JSON. And a new Optimizer Traces tool allows users to track the optimizer decision-making process.

InnoDB, the default storage engine for MySQL, has been re-factored in this release "to minimize legacy threading, flushing, and purge mutex contentions and bottlenecks," the company explained. The result is better concurrency on heavily loaded OLTP systems. Also, developers can now build full-text indexes on InnoDB tables to represent text-based content and speed up application searches for words and phrases.

One feature in this release that seems aimed directly at the NoSQL users is the ability to execute Data Definition Language (DDL) operations while applications remain online and available for update. So there's no need to go offline to change the database schema. This release also uses the Memcached API to retrieve data directly from the database. This NoSQL-like bypassing of the database engine means data gets delivered up to nine times faster, the company said.

NoSQL -- the non-relational, distributed, schema-free, open source DBMSes that emerged around 2009 -- have been getting a lot of attention lately as the most effective systems for the Web, the cloud and mobile computing. These "document databases" are designed for greater flexibility and support of a looser data definition. Google, Amazon, Facebook and LinkedIn all have NoSQL in their technology mixes.

The focus on NoSQL territory in this release can be seen in a statement by Tomas Ulin, Oracle vice president of MySQL Engineering: "The new features and enhancements that MySQL 5.6 delivers further demonstrate Oracle's investment in driving MySQL innovation, making MySQL a fantastic fit for today's most demanding Web, cloud, and embedded application requirements."

It has been about two years since Oracle offered a major MySQL update. Back in 2010, the company promised to increase its investment in MySQL, which it acquired with its purchase of Sun Microsystems. In December of that year, Oracle released MySQL 5.5, the first major update since the 5.1 release in 2008. Under Sun's stewardship, MySQL forked into several projects, including MariaDB, a fork of the DBMS that uses the Maria transactional storage engine. MySQL co-creator Michael "Monty" Widenius is one of the creators of MariaDB.

The Linux Fedora Project appears to be considering a switch from MySQL to MariaDB for its next release (Fedora 19). The proposal to make the switch was published on the Fedora wiki. Replacing MySQL with MariaDB would mean that "Fedora will have a truly open source MySQL implementation and won't depend on what Oracle decides to do with MySQL in the future," the Web site states.

MySQL 5.6 Community Edition is available now as a free download. MySQL Cluster Community Edition, a high-availability, high-redundancy version that has been adapted for distributed computing environments, is available in both open source and commercial editions.

About the Author

John K. Waters is the editor in chief of a number of sites, with a focus on high-end development, AI and future tech. He's been writing about cutting-edge technologies and culture of Silicon Valley for more than two decades, and he's written more than a dozen books. He also co-scripted the documentary film Silicon Valley: A 100 Year Renaissance, which aired on PBS.  He can be reached at [email protected].