The My Maria AB Maria initiative group, consisting of six people and headed by Michael “Monty” Widenius (creator of MySQL and MyISAM), released a test version of the new Maria data storage engine. Maria's engine is an enhanced version of MyISAM that supports all basic MyISAM functionality and in addition to this offers: support for data recovery after failures (data auto-recovery, crash safe), full logging (including operations CREATE, DROP, RENAME and TRUNCATE) and new line format PAGE. It is planned that the Maria engine will be included in the standard package in MySQL 6.X versions
Key notes regarding the comparison of Maria and MyISAM
Advantages over MyISAM
Data and index recovery after failures
Rollback, after a failure, to a previous state, or to a state after the last LOCK TABLES command
Full logging operations, including: CREATE / DROP / RENAME / TRUNCATE TABLES, LOAD DATA INFILE, SELECT ... INSERT and INSERT (multiple rows), ALTER TABLE
LOAD INDEX can skip unused index blocks
New block format of lines in which data is stored in the form of pages
When using block format strings (now selected by default) string data can be cached
Block tests of most elements
Support for both fault-tolerant (crash safe, transactional) and non-transactional tables. (Non-transactional tables are not logged and less space is used for rows): CREATE TABLE foo (...) TRANSACTIONAL = 0 | 1
PAGE is used only for fault tolerant / transactional string format.
PAGE format should give a noticeable increase in speed on systems with poor data caching. (For example, Windows)
Differences from MyISAM
Using large (1GB default) log files
Using log control (maria_log_control) and log files (maria_log. ???????). Log files can be cleared automatically when they are no longer needed, or on demand (after backup).
The default is 8K pages (MyISAM uses 1K). Maria will run faster on indexes with a fixed size, but slower on variable-length keys.
Elimination of deficiencies in the near future
In Maria 1.0 there can be one writer and many readers (MyISAM can have one add and many readers when competing posts are used).
Not supported INSERT DELAYED
Composite key caching is not supported.
Deficiencies in future releases
Storing very small lines
MERGE tables are not supported.
Differences That Will Probably Not Be Eliminated
Data pages in block format increase size: 10 bytes per page and 5 bytes per line. Transactions and support for competing entries will increase: 7 bytes for new lines, 14 bytes for deleted lines
No external blocking (MyISAM has external blocking, but it is rarely used)
Use same page size for index and data. MyISAM supports various page sizes for indexes.
Index number requires one extra byte per index page.
Internal MySQL RAID is not supported (disabled in MyISAM)