Aria (storage engine)

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.

Aria
Original author(s)AskMonty.org
Developer(s)Monty Program Ab
Stable release
MariaDB 10.0.12 / June 16, 2014 (2014-06-16)
Preview release
All
PlatformAll
Available inC++
TypeDatabase engine
LicenseGNU GPLv2
Websitekb.askmonty.org/v/aria

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] Chris Tooley, who won a contest to suggest the name, wrote, "Aria is Maria without the 'M'; also it is a pleasant musical term."[4]

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:

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.

gollark: No offense intended, I just don't care about BFuous compilation.
gollark: Maybe. It is only 160 lines, but I don't care for it much.
gollark: It's probably* only O(n²) or so.
gollark: https://discord.com/channels/800373244162867231/800373244162867234/829744859115683920
gollark: I know *roughly* how it works, see:

See also

References

  1. Aria - AskMonty KnowledgeBase Archived May 31, 2009, at the Wayback Machine
  2. "Aria FAQ - AskMonty KnowledgeBase". Archived from the original on 2010-08-22. Retrieved 2010-11-10.
  3. "Rename Maria". askmonty.org. Archived from the original on 2010-05-03. Retrieved 2011-05-19.
  4. "Rename Maria Contest Winner!". GNOME Blogs. Retrieved 2018-01-21.


This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.