Aria (storage engine)

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Aria
Original author(s) AskMonty.org
Developer(s) Monty Program Ab
Stable release MariaDB 10.0.12 / June 16, 2014; 6 months ago (2014-06-16)
Preview release All
Platform All
Available in C++
Type Database engine
License GNU GPLv2
Website kb.askmonty.org/v/aria

Aria is a storage engine for the MariaDB and MySQL relational database management systems. Its goal is to make a crash-safe alternative to MyISAM. It is not yet transactional but plans to add proper support for database transactions at some point in the future. The long-term goal is for Aria to be the default transactional and non-transactional storage engine for MariaDB. It has been in development since 2007 and was first announced by Michael "Monty" Widenius on his blog.[1] Aria is used for internal temporary tables in MariaDB, a community-developed branch of the MySQL database led by Widenius. Aria is not shipped with MySQL or Percona Server, but is included in the TokuDB release of MariaDB.

The Maria project is hosted on Launchpad.

Aria was initially named 'Maria', as a reference to Monty's youngest child.[2] It was renamed Aria in 2010 to avoid confusion with the main database it is developed for (MariaDB).[3]

Features[edit]

Aria is very similar to MyISAM, but its purpose is to be a crash-safe alternative to MyISAM.

Aria does not support foreign keys and, currently, transactions.

Aria supports:

Files structure[edit]

Non-partitioned Aria tables consist of three physical files:

  • table_name.frm
  • table_name.MAD
  • table_name.MAI

The .frm file contains the table definition (this file exists for all storage engines which write data to disk). The .MAD file contains the data. The .MAI file contains the indexes.

Formats[edit]

Three table formats are available for Aria tables:

  • PAGE;
  • FIXED;
  • DYNAMIC.

PAGE is the only format available for transactional tables.

FIXED and DYNAMIC are the same formats used by MyISAM, and have been mainly implemented for compatibility. However, MyISAM's COMPRESSED format is not available in Aria.

In order to set the table format, one can use the ROW_FORMAT option in a CREATE TABLE or ALTER TABLE command.

See also[edit]

References[edit]

External links[edit]