Falcon (storage engine)
Encyclopedia
Falcon was a transactional
storage engine being developed for the MySQL
relational database management system
. Development was stopped after Oracle
purchased MySQL. 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
. It did better in several tests, 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.
Database transaction
A transaction comprises a unit of work performed within a database management system against a database, and treated in a coherent and reliable way independent of other transactions...
storage engine being developed for the MySQL
MySQL
MySQL officially, but also commonly "My Sequel") is a relational database management system that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My...
relational database management system
Relational database management system
A relational database management system is a database management system that is based on the relational model as introduced by E. F. Codd. Most popular databases currently in use are based on the relational database model....
. Development was stopped after Oracle
Oracle Corporation
Oracle Corporation is an American multinational computer technology corporation that specializes in developing and marketing hardware systems and enterprise software products – particularly database management systems...
purchased MySQL. It was based on the Netfrastructure
Netfrastructure
Netfrastructure is both a web application development and database tool for Java and the name of the company which produces it. It was founded by Jim Starkey, a well known database architect....
database engine. Falcon was designed to take advantage of Sun's zfs
ZFS
In computing, ZFS is a combined file system and logical volume manager designed by Sun Microsystems. The features of ZFS include data integrity verification against data corruption modes , support for high storage capacities, integration of the concepts of filesystem and volume management,...
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
InnoDB
InnoDB is the default storage engine for MySQL as of MySQL 5.5. It provides the standard ACID-compliant transaction features, along with foreign key support...
and MyISAM
MyISAM
MyISAM was the default storage engine for the MySQL relational database management system versions prior to 5.5 . It is based on the older ISAM code but has many useful extensions. The major deficiency of MyISAM is the absence of transactions support...
. It did better in several tests, 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.
External links
- Text summary of Starkey's presentation
- Slashdot news item of the open source announcement
- InnoDB vs MyISAM vs Falcon
- Falcon Design Review
- Understanding the Falcon Transaction Storage Engine - Part 1
- Understanding the Falcon Transaction Storage Engine - Part 2
- Understanding the Falcon Transaction Storage Engine - Part 3