MariaDB versus MySQL - Features
You are viewing an old version of this article. View the current version here.
Monty Program has a MariaDB vs MySQL whitepaper available for download.
See also MariaDB vs MySQL - Compatibility
In addition to the standard MyISAM, BLACKHOLE, CSV, MEMORY, and ARCHIVE storage engines, the following are also included with MariaDB Source and Binary packages:
- XtraDB (drop-in replacement for InnoDB)
- PBXT (In MariaDB 5.1, MariaDB 5.2, and MariaDB 5.3. Disabled in MariaDB 5.5.)
- FederatedX (drop-in replacement for Federated)
- OQGRAPH (In MariaDB 5.1, MariaDB 5.2, and MariaDB 5.3. Disabled in MariaDB 5.5.) — new in 5.2
- SphinxSE — new in 5.2
- IBMDB2I. Oracle removed this in MySQL 5.1.55 but we have kept the code in MariaDB until the version 5.5.
- Cassandra in MariaDB-10.0
- We are working on adding other no-sql storage engines into MariaDB.
- CONNECT in MariaDB-10.0
- SEQUENCE in MariaDB-10.0
- A lot of optimizer enhancements in MariaDB 5.3. Sub queries are now finally usable! The complete list and a comparison with MySQL is here. You can find a benchmark here.
- Faster and safer replication: Group commit for the binary log. This makes many setups that uses replication and lot's of updates more than 2x times faster.
- Improvements for Innodb asynchronous IO subsystem on Windows.
- Index for MEMORY(HEAP) engine is faster. According to a simple test, 24 % faster on INSERT for integer index and 60 % faster for index on a CHAR(20) column.
- CHECKSUM TABLE is faster.
- We improved the performance of character set conversions (and removed conversions when they were not really needed). Overall speed improvements is 1-5 % (according to sql-bench) but can be higher for big results sets with all characters between 0x00-0x7f.
- Pool of Threads in MariaDB 5.1 and even better in MariaDB 5.5. This allows you to run MariaDB with 200,000+ connections and with a notable speed improvement when using many connections.
- There are some improvements to DBUG code to make its execution faster when debug is compiled in but not used.
- Our use of the Aria storage engine enables faster complex queries (queries which normally use disk-based temporary tables). The Aria storage engine is used for internal temporary tables, which should give you a speedup when doing complex selects. Aria is usually faster for temporary tables when compared to MyISAM because Aria caches row data in memory and normally doesn't have to write the temporary rows to disk.
- The test suite is extend and now runs much faster than before even though it tests more things.
We've added a lot of new features to MariaDB. If a patch or feature is useful, safe, and stable — we make every effort to include it in MariaDB. The most notable features are:
- Microseconds in MariaDB — new in 5.3
- Microsecond Precision in Processlist
- Table Elimination
- Virtual Columns — new in 5.2
- Extended User Statistics — new in 5.2
- Segmented Key Cache — new in 5.2
- KILL all queries for a user — new in 5.3
- Pluggable Authentication — new in 5.2
- Storage-engine-specific CREATE TABLE — new in 5.2
- Enhancements to INFORMATION SCHEMA.PLUGINS table — new in 5.2
- Group commit for the binary log. This makes replication notably faster! — new in 5.3
mysqlbinlog option to change the used database — new in 5.2
- Progress reporting for
LOAD DATA INFILE. — new in 5.3
- Faster joins and subqueries. — new in 5.3
- HandlerSocket and faster HANDLER calls. — new in 5.3
- Dynamic Columns support. — new in 5.3
- GIS Functionality — new in 5.3
- Multi-source replication. — new in 10.0
- SHOW EXPLAIN gives you the EXPLAIN plan for a query running in another thread. — new in 10.0
For a full list, please see features for each release
- More tests in the test suite.
- Bugs in tests fixed.
- Test builds with different configure options to get better feature testing.
- Remove invalid tests. (e.g. Don't test feature ''X'' if that feature is not in the build you are testing.)
- Bugs are bad. Fix as many bugs as possible and try to not introduce new ones.
- Compiler warnings are also bad. Eliminate as many compiler warnings as possible.
- All code in MariaDB is released under GPL, LPGL or BSD. MariaDB does not have closed source modules like the one you can find in MySQL enterprise edition. In fact, all the closed source features in MySQL 5.5 enterprise edition are found in the MariaDB open source version.
- MariaDB includes test cases for all fixed bugs. Oracle doesn't provide test cases for new bugs fixed in MySQL 5.5.
- All bugs and development plans are public.
- MariaDB is developed by the community in true open source spirit.
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.