Falcon (storage engine)

Last updated
Falcon
Original author(s) Jim Starkey
Developer(s) Sun Microsystems
Preview release
MySQL 6.0.9 / January 10, 2009 (2009-01-10)
Operating system Cross-platform
Type Database engine
License GNU General Public License
Website www.mysql.com/mysql60/   OOjs UI icon edit-ltr-progressive.svg

Falcon is a discontinued [1] transactional storage engine being developed for the MySQL relational database management system. Development was stopped after Oracle purchased MySQL. [2] It was based on the Netfrastructure database engine. Falcon was designed to take advantage of Sun's ZFS file system.

Architecture analysis showed an interesting mixture of possible performance properties, while low level benchmarks on the first alpha release in 5.1.14-falcon showed that Falcon performed differently from both InnoDB and MyISAM. [3] [4] It did better in several tests,[ citation needed ] worse in others, with inefficient support for the MySQL LIMIT operation a limitation. Its biggest advantage though is known to be ease of use; Falcon requires minimum maintenance and designed to reconfigure itself automatically to handle all types of loads efficiently.

See also

Related Research Articles

<span class="mw-page-title-main">MySQL</span> SQL database engine software

MySQL is an open-source relational database management system (RDBMS). Its name is a combination of "My", the name of co-founder Michael Widenius's daughter My, and "SQL", the acronym for Structured Query Language. A relational database organizes data into one or more data tables in which data may be related to each other; these relations help structure the data. SQL is a language that programmers use to create, modify and extract data from the relational database, as well as control user access to the database. In addition to relational databases and SQL, an RDBMS like MySQL works with an operating system to implement a relational database in a computer's storage system, manages users, allows for network access and facilitates testing database integrity and creation of backups.

A database engine is the underlying software component that a database management system (DBMS) uses to create, read, update and delete (CRUD) data from a database. Most database management systems include their own application programming interface (API) that allows the user to interact with their underlying engine without going through the user interface of the DBMS.

ISAM, an acronym for Indexed Sequential Access Method, is a method for creating, maintaining, and manipulating computer files of data so that records can be retrieved sequentially or randomly by one or more keys. Indexes of key fields are maintained to achieve fast retrieval of required file records in indexed files. IBM originally developed ISAM for mainframe computers, but implementations are available for most computer systems.

The following tables compare general and technical information for a number of relational database management systems. Please see the individual products' articles for further information. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs.

InnoDB is a storage engine for the database management system MySQL and MariaDB. Since the release of MySQL 5.5.5 in 2010, it replaced MyISAM as MySQL's default table type. It provides the standard ACID-compliant transaction features, along with foreign key support. It is included as standard in most binaries distributed by MySQL AB, the exception being some OEM versions.

Innobase was a Finnish company headquartered in Helsinki, Finland. Innobase is best known for being the developer of the InnoDB transactional storage engine for the MySQL open source database system. From 2005 on, Innobase was a subsidiary of Oracle Corporation, which acquired Innobase. It has been fully merged into Oracle and terminated all business activities as of July 8, 2013.

MyISAM was the default storage engine for the MySQL relational database management system versions prior to 5.5 released in December 2009. It is based on the older ISAM code, but it has many useful extensions.

An embedded database system is a database management system (DBMS) which is tightly integrated with an application software; it is embedded in the application. It is a broad technology category that includes:

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

This is a comparison between notable database engines for the MySQL database management system (DBMS). A database engine is the underlying software component that a DBMS uses to create, read, update and delete (CRUD) data from a database.

In relational databases a virtual column is a table column whose value(s) is automatically computed using other columns values, or another deterministic expression. Virtual columns are defined of SQL:2003 as Generated Column, and are only implemented by some DBMSs, like MariaDB, SQL Server, Oracle, PostgreSQL, SQLite and Firebird.

Percona Server for MySQL is a distribution of the MySQL relational database management system created by Percona. It is similar to MySQL Enterprise from Oracle Corporation.

Amazon Aurora is a relational database service developed and offered by Amazon Web Services beginning in October 2014. Aurora is available as part of the Amazon Relational Database Service (RDS).

Percona XtraDB is a storage engine for the MariaDB and Percona Server databases, and is intended as a drop-in replacement to InnoDB, which is the default engine in MySQL.

The following outline is provided as an overview of and topical guide to MySQL:

<span class="mw-page-title-main">RocksDB</span> Embedded key-value database

RocksDB is a high performance embedded database for key-value data. It is a fork of Google's LevelDB optimized to exploit multi-core processors (CPUs), and make efficient use of fast storage, such as solid-state drives (SSD), for input/output (I/O) bound workloads. It is based on a log-structured merge-tree data structure. It is written in C++ and provides official language bindings for C++, C, and Java. Many third-party language bindings exist. RocksDB is free and open-source software, released originally under a BSD 3-clause license. However, in July 2017 the project was migrated to a dual license of both Apache 2.0 and GPLv2 license. This change helped its adoption in Apache Software Foundation's projects after blacklist of the previous BSD+Patents license clause.

<span class="mw-page-title-main">MyRocks</span>

MyRocks is open-source software developed at Facebook in order to use MySQL features with RocksDB implementations. It is based on Oracle MySQL 5.6.

MEMORY is a storage engine for MySQL and MariaDB relational database management systems, developed by Oracle and MariaDB. Before the version 4.1 of MySQL it was called Heap.

HammerDB is an open source database benchmarking application developed by Steve Shaw. HammerDB supports databases such as Oracle, SQL Server, Db2, MySQL and MariaDB. HammerDB is written in TCL and C, and is licensed under the GPL v3.

References

  1. "Oracle Discusses MySQL Database Plans".[ permanent dead link ]
  2. "Oracle Commits to MySQL with InnoDB". 13 April 2010.
  3. "Falcon Storage Engine Design Review". 2007-01-12.
  4. "InnoDB vs MyISAM vs Falcon benchmarks - part 1". 2007-01-08.