Neha Patil (Editor)

Aria (storage engine)

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Original author(s)
  
AskMonty.org

Preview release
  
All

Available in
  
C++

Developer(s)
  
Monty Program Ab

Platform
  
All

Stable release
  
MariaDB 10.0.12 / June 16, 2014; 2 years ago (2014-06-16)

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. 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.

Contents

The Maria project is hosted on Launchpad.

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

Features

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:

  • Fulltext indexes;
  • OpenGIS data types;
  • Virtual columns.
  • Files structure

    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

    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.

    References

    Aria (storage engine) Wikipedia