You are on page 1of 10

MariaDB 10 vs. MySQL

Feature Comparison

Scalability

Feature

Descrip-on

MySQL?

MariaDB?

Parallel Slave

Replica-on

Improves scalability, by making databases scaled with MariaDB/MySQL replica?on more consistent, with higher performance.

Single

in 10.0.

 

CompaDble with MySQL 5.6 but with improvements. MySQL's parallel replicaDon can only

threaded

run transacDons for different databases in parallel - each database per slave is single-

hQps://mariadb.com/kb/en/parallel-replicaDon/

per

database.

threaded. The MariaDB implementaDon can run mulDple transacDons within same database in parallel. Up to 10x replicaDon performance improvement vs. MySQL.

Mul--Source

Allows MariaDB to act as a powerful data collec?on engine for BI/OLAP and analy?cal

in 10.0.

Replica-on

applica?ons. Makes complex replica?on architectures easier to use and manage.

Allows a slave database server to replicate from mulDple master servers. If you've split your data over several masters - mulDple databases, applicaDons, sharding - MulD-source

   

ReplicaDon can pull all the data together onto one slave for analyDcs, backup, etc.

hQps://mariadb.com/kb/en/mulD-source-replicaDon/

Global Transac-on ID

Advanced technology that makes MariaDB’s scale and replica?on features work.

--

Makes complex replicaDon hierarchies such as MulD-Source ReplicaDon and advanced performance features like Parallel Slave ReplicaDon possible. Tags events within a replicaDon hierarchy with a unique, universal idenDfier spanning mulDple domains, but strictly ordered within each domain. MySQL 5.6’s GTID does not allow for independent domains, and thus is limited in supporDng complex replicaDon. MariaDB’s GTID is more powerful and flexible. hQps://mariadb.com/kb/en/global-transacDon-id/

Limited

in 10.0.

Scalability - conDnued

Feature

Descrip-on

MySQL?

MariaDB?

Sharding - Spider

Allows DBAs and DevOps engineers to split up big database tables across mul?ple servers,

Storage Engine

for performance and scale.

opDonal 3rd

in 10.0.

Spider is a storage engine contributed by a 3rd party. It allows for a table to be sharded. Supports XA transacDons. Shards may be replicated for HA.

party install

hQps://mariadb.com/kb/en/spider-storage-engine-overview/

Table Par--oning:

Helps DBAs and administrators manually par??on large tables across mul?ple files on a

Improvements

single server, reducing I/O conten?on and allowing for more parallel processing.

in 5.6.

in 10.0.

Table parDDoning lets a DBA or administrator control how a table is split across mulDple OS files, for higher performance over large data sets. The improvements done in MySQL 5.6 which have been merged to MariaDB 10.0 include 1) EXCHANGE PARTITION data in a parDDon can be moved to a non-parDDoned table and vice versa, 2) querying specific parDDons (explicit parDDon selecDons)

Performance

Feature

Descrip-on

MySQL?

MariaDB?

TokuDB Storage

Engine

mproves MariaDB’s performance using a 3rd party storage engine with advanced

3rd party

in 10.0.

indexing and compression. Uses less CPU, storage, and network resources, speeding access and updates to data. Can make larger replica?on architectures work faster.

Integrated with MariaDB 10, TokuDB uses advanced indexing and compression that allows for up to 20x faster updates/inserDon, and up to 90% less HDD/flash. Faster updates/inserDons reduce slave lag for replicaDon. hQps://mariadb.com/kb/en/tokudb/

Improved InnoDB storage engine

The new InnoDB in MySQL 5.6 includes significant improvements in many areas. These improvements have been added to MariaDB 10.0

in 5.6

in 10.0.

 

The new InnoDB takes advantage of the latest enhancements in operaDng systems and hardware architectures.

Performance

Schema

Adds a powerful monitoring tool for real-?me performance management, that can be used both by admins and by automa?on tools.

in 5.6.

in 10.0.

 

Allows a developer or DBA, or IT automaDon tooling to directly monitor performance of a database node in real Dme through queries to a monitoring table built into the system.

Improved thread

Helps MariaDB handle larger numbers of concurrent users efficiently.

- only

pool

Increase the scalability of an instance of the database server when there are many

in Enterprise

available since

concurrent connecDons. hQps://mariadb.com/kb/en/threadpool-in-55/

version

5.5.

Performance - conDnued

Feature

Descrip-on

MySQL?

MariaDB?

Fusion-io specific enhancements

Makes MariaDB run even faster using Fusion-io SSDs.

Improves the performance of Fusion-io SSDs when used with MariaDB. Uses the atomic write feature of the Fusion-io directFS file system, and eliminates InnoDB overhead to guarantee ACID consistency.

in 10.0.

hQps://mariadb.com/kb/en/fusionio-direcfs-atomic-write-support/

Engine Independent Table

Makes MariaDB’s op?mizer work beVer, speeding query processing.

Sta-s-cs

Improves opDmizaDons by gathering staDsDcs for use by the opDmizer about the size and structure of tables, independent of specific storage engine features.

in 10.0.

hQps://mariadb.com/kb/en/engine-independent-table-staDsDcs/

Subquery

Lets MariaDB’s op?mizer speed up a larger range of SQL opera?ons.

Op-miza-ons

Through transformaDon, apply exisDng opDmizaDons to a broader range of SQL statements. hQps://mariadb.com/kb/en/subquery-opDmizaDons/ MariaDB 10 includes many opDmizaDons not in MySQL 5.6 - for a complete list see

in 10.0.

hQps://mariadb.com/kb/en/opDmizer-feature-comparison-matrix/

Histogram Stats

Helps MariaDB’s op?mizer increase performance for non-indexed columns in the DB.

for Non-Indexed

Improves opDmizaDons on columns without indexes, by capturing the distribuDon of

hQps://mariadb.com/kb/en/histogram-based-staDsDcs/

available since

Columns

5.5.

values on such columns and using that distribuDon to adjust the query plan.

NoSQL CapabiliDes

Feature

Descrip-on

MySQL?

MariaDB?

CONNECT storage engine

Powerful connec?on tool, able to adapt MariaDB to access and process a wide range of valuable data files and sources that would otherwise be hard to use.

in 10.0.

 

CONNECT is a flexible tool to access diverse data sources dynamically, including unstructured files such as log files in a folder, or any database with an ODBC connector, from within MariaDB. hQps://mariadb.com/kb/en/using-connect-general-informaDon/

Sequence storage engine

asy access to sequen?al numeric data inside queries.

Create numerical sequences that are stored in memory and can be used in your queries. DocumentaDon: hQps://mariadb.com/kb/en/sequence/

in 10.0.

NoSQL Cassandra Storage Engine

Use data from Cassandra alongside data in MariaDB, and interoperate directly with a widely adopted Big Data technology.

in 10.0.

 

Combine data from Apache Cassandra with your data in MariaDB, read and write Cassandra data, and connect many MariaDB servers to one Cassandra ring, creaDng a high-availability cluster. hQps://mariadb.com/kb/en/cassandra-storage-engine/

Dynamic Columns

Use MariaDB to store and process unstructured data similar to NoSQL databases.

Dynamic Columns store different, labeled data objects in each row of a table similar to NoSQL technologies. hQps://mariadb.com/kb/en/dynamic-columns-in-mariadb-10/

in 10.0.

NoSQL CapabiliDes - conDnued

Feature

Descrip-on

MySQL?

MariaDB?

NoSQL

High performance, low-level access to table data. A building block for sophis?cated non-

in 10.0.

Handlersocket

rela?onal data processing inside MariaDB.

interface

HandlerSocket gives you direct access to InnoDB/XtraDB and SPIDER. It supports simple CRUD operaDons on tables, with substanDally reduced CPU, disk, and network usage compared to ordinary SQL query access to data.

   

hQps://mariadb.com/kb/en/handlersocket/

NoSQL

Transparently stores data using memcached, a popular key/value technology, in database

in 5.6.

memcached

tables, adding database durability to memcached, and allowing SQL access to

interface

memcached data for complex queries and analy?cs.

   

An InnoDB plug-in that delivers a memcached interface that stores and retrieves data from InnoDB tables using the simple, high-performance memcached API. Turns the database into a key/value store for single-row CRUD operaDons. Persists memcached data in InnoDB. Access memcached data through SQL statements.

OperaDons

Feature

Descrip-on

MySQL?

MariaDB?

Improved table

Simplifies integra?on of data in new storage engines, elimina?ng extra work for DBAs.

discovery

For storage engines that support this capability, MariaDB 10 includes the ability to use tables for which no explicit CREATE TABLE statement has been run. The Sequence and FederatedX storage engines now support table discovery.

in 10.0.

hQps://mariadb.com/kb/en/table-discovery/

SHOW PLUGINS

Easy way to get a snapshot of installed database components.

SONAME

Reports informaDon and installaDon status on compiled-in and dynamic plug-ins.

in 10.0.

hQps://mariadb.com/kb/en/show-plugins-soname/

SHUTDOWN

DevOps feature allows applica?ons to shutdown the database programma?cally.

Command

Added SHUTDOWN statement to SQL syntax - shuts a server down gracefully. Same permissions as mysqladmin shutdown. hQps://mariadb.com/kb/en/shutdown/

in 10.0.

Kill query by query ID

Lets DBAs or DevOps engineers manually fix performance issues when long-running queries block web applica?ons.

in 10.0.

 

Allows a DBA or admin to kill a single query execuDng on a connecDon/thread, without killing the enDre connecDon.

hQps://mariadb.com/kb/en/data-manipulaDon-kill-connecDon-query/

OperaDons - conDnued

Feature

Descrip-on

MySQL?

MariaDB?

Online ALTER

Cri?cal DevOps feature - eliminates down?me and lets produc?on applica?ons keep

TABLE

running when new applica?on features change database schemas.

in 5.6.

in 10.0.

Do many of your schema changes without interrupDng the system. MySQL 5.6 introduces the concept of online ALTER, which has been merged to MariaDB 10.0

SHOW EXPLAIN

Lets DevOps engineers diagnose long-running query issues on running, produc?on

in 10.0.

Command

applica?ons.

Helps developers and DBAs diagnose performance issues. Lets you get the query plan for acDvely running queries. OpDonally, can automaDcally run SHOW EXPLAIN on queries in the slow query log and capture the plan in the log.

   

hQps://mariadb.com/kb/en/show-explain/

Per-thread Memory Sta-s-cs

Gives DevOps engineers a view into DB memory management for tuning and problem solving.

in 10.0.

 

Adds a memory usage column to the processlist, and allows this value to be returned through SHOW STATUS. Using this new feature, DBAs and developers can evaluate per- connecDon memory usage to diagnose problems.

Improved Error

Makes log files much easier to interpret for faster problem solving.

Messages

All errors now include descripDve text in the log, benefilng both developers and DBAs.

in 10.0.

Security and Compliance

Feature

Descrip-on

MySQL?

MariaDB?

Role-based access control

In a DevOps environment, allows IT opera?ons to permit developers to have fine-grain access to certain database ac?vi?es and monitors without compromising security.

in 10.0.

 

DBAs can now create roles with certain permissions and assign users to the roles.

hQps://mariadb.com/kb/en/roles-overview/

Audit Plugin

Iden?fy, diagnose, and correct poten?al security breaches. Comply with auditability regula?ons.

- only

in Enterprise

in 10.0.

The MariaDB Audit Plugin introduces the capabiliDes of tracking user access to data. Follow in real Dme who’s doing what in your databases.

version

hQps://mariadb.com/kb/en/mariadb-audit-plugin/

PAM

Lets you delegate authen?ca?on for access to the database to a popular authen?ca?on

- only

Available

Authen-ca-on

API (PAM) used to authen?cate users for other applica?ons on Unix-based OSs.

Plugin

The plugin enables Pluggable AuthenDcaDon Modules (PAM) for the database server, which is an authenDcaDon framework used by Linux, FreeBSD, Solaris, and other operaDng systems. hQps://mariadb.com/kb/en/pam-authenDcaDon-plugin/

in Enterprise version

since 5.5