MariaDB Definition

MariaDB Definition

MariaDB is an open source relational database management system (DBMS) that is a compatible drop-in replacement for the widely used MySQL database technology. It was created as a software fork of MySQL by developers who played key roles in building the original database; they devised MariaDB in 2009 in response to Oracle Corp.’s acquisition of MySQL.

MariaDB is based on SQL and supports ACID-style data processing with guaranteed atomicity, consistency, isolation and durability for transactions. Among other features, the database also supports JSON APIs, parallel data replication and multiple storage engines, including InnoDB, MyRocks, Spider, Aria, TokuDB, Cassandra and MariaDB ColumnStore.

Much of the development work on the open source database has focused on achieving feature parity between MariaDB and MySQL. MariaDB Corp., the driving force behind MariaDB, says that “for all practical purposes” the database is binary-compatible with MySQL. As a result, most users can switch between the two technologies simply by uninstalling MySQL and installing MariaDB in its place.

Nonetheless, there are some incompatibilities between corresponding versions of the databases. For example, in version 10.1 and above, MariaDB stores JSON data in a different format than MySQL 5.7 does. To compensate, users looking to replicate columns of JSON objects from MySQL to MariaDB need to either convert them to the format used by the latter or run statement-based replication jobs via SQL.

MariaDB Corp., based in Espoo, Finland, with U.S. headquarters in Menlo Park, Calif., offers a commercial version of MariaDB on a subscription basis, along with complementary products and a set of training, remote management and migration services. However, the database’s source code is maintained by the MariaDB Foundation, a group that was formed in 2012 to preserve the software’s open source nature.

Origins and versions of MariaDB

Underlying the MariaDB effort is dissatisfaction on the part of MySQL’s initial developers with the evolution of that database, which came under the stewardship of Oracle when the database market leader completed its purchase of Sun Microsystems Inc. in early 2010, nine months after announcing the deal.

The development of MariaDB was led by Michael “Monty” Widenius, who was also the lead developer on MySQL and a founder of MySQL AB, a vendor that Sun bought in 2008. After leaving Sun in early 2009, he and several colleagues began work on a MySQL storage engine that soon morphed into MariaDB, which is named after Widenius’s youngest daughter. He also formed a new company that merged with a database consulting business to create what eventually became known as MariaDB Corp.

The first release of MariaDB, known as version 5.1, became available for production uses in early 2010. Versions 5.2, 5.3 and 5.5 followed, and then MariaDB 10.0 was released in 2014. It represented a change in the database’s classification scheme, as earlier release numbers were patterned after MySQL ones.

MariaDB 10.1 and 10.2 came after that in 2015 and 2017, respectively. The 10.2 version, which was up to a 10.2.12 release as of January 2018, employs InnoDB as the default storage engine, and new features include a JSON data type designed to boost ties with MySQL on JSON. Next in line for release is MariaDB 10.3, which became available in alpha and beta versions in 2017.

MariaDB Definition

Like some other open source databases, web and cloud applications have proved fertile for MariaDB. Designed by an open source champion, it has found particular use in the OpenStack software community for proofs-of-concept, development and production.

Running and licensing MariaDB

The MariaDB software runs on Windows, Linux and macOS operating systems; it’s available on Intel and IBM Power8 hardware platforms, and runs as a service on several cloud platforms. Supported programming languages include C++, C#, Java, Python and others.

A Linux-based MariaDB Galera Cluster implementation was also developed to provide a synchronous multi-master cluster option for MariaDB users. However, the API that connects the database to Galera Cluster, another open source technology, is included by default in MariaDB starting with the 10.1 release, eliminating the need for the separate cluster download.

MariaDB is provided as open source software under version 2 of the GNU General Public License (GPL), as is the MariaDB ColumnStore engine, which is designed for use in big data applications. MariaDB Corp. also offers a database proxy technology called MaxScale that lets querying be split across multiple MariaDB servers; it’s available under a Business Source License created by the company that charges a price for MaxScale in deployments with more than three servers, although versions of the software are scheduled to transition to open source via the GPL within four years of being released.

As with other open source RDBMS technologies, such as PostgreSQL and Firebird, both MariaDB and MySQL have found use as lower-cost alternatives to mainstream Oracle, Microsoft SQL Server and IBM DB2 databases. Web and cloud applications are seeing significant use of open source databases; in particular, MariaDB has won adherents among users of other components in various open source software combinations, including the OpenStack framework. Among MariaDB users are Wikipedia, Facebook and Google, as well as Singapore-based DBS Bank and the Institute for Health Metrics and Evaluation in Seattle.