Database engine
Encyclopedia
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.
Many of the modern DBMS support multiple database engines within the same database. For example, MySQL
supports InnoDB
as well as MyISAM
.
Some database engines are transactional
.
Database management system
A database management system is a software package with computer programs that control the creation, maintenance, and use of a database. It allows organizations to conveniently develop databases for various applications by database administrators and other specialists. A database is an integrated...
(DBMS) uses to create, read, update and delete (CRUD) data
Data
The term data refers to qualitative or quantitative attributes of a variable or set of variables. Data are typically the results of measurements and can be the basis of graphs, images, or observations of a set of variables. Data are often viewed as the lowest level of abstraction from which...
from a database
Database
A database is an organized collection of data for one or more purposes, usually in digital form. The data are typically organized to model relevant aspects of reality , in a way that supports processes requiring this information...
.
Most database management systems include their own application programming interface
Application programming interface
An application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...
(API) that allows the user to interact with their underlying engine without going through the user interface of the DBMS.
Many of the modern DBMS support multiple database engines within the same database. For example, 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...
supports 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...
as well as 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...
.
Some database engines are transactional
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...
.
Name | Free | Transactional |
---|---|---|
Aria | GPL | |
BlitzDB | GPL | |
Falcon Falcon (storage engine) 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... |
GPL | |
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... |
GPL | |
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... |
GPL | |
XtraDB | GPL |
See also
- Aria (storage engine)
- Btrieve's Micro-Kernel Database Engine
- Berkeley DBBerkeley DBBerkeley DB is a computer software library that provides a high-performance embedded database for key/value data. Berkeley DB is a programmatic software library written in C with API bindings for C++, PHP, Java, Perl, Python, Ruby, Tcl, Smalltalk, and most other programming languages...
- c-treeACE Database EngineC-treec-treeACE is a cross-platform database engine developed by FairCom Corporation. Software developers typically embed the c-treeACE engine within the applications that they create and then deploy the application and engine together as an integrated solution....
- FLAIM Database Engine
- InnoDBInnoDBInnoDB 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...
- Microsoft Jet Database EngineMicrosoft Jet Database EngineThe Microsoft Jet Database Engine is a database engine on which several Microsoft products have been built. A database engine is the underlying component of a database, a collection of information stored on a computer in a systematic way...
- MyISAMMyISAMMyISAM 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...
- MySQL ClusterMySQL ClusterMySQL Cluster is a technology which provides shared-nothing clustering capabilities for the MySQL database management system. It was first included in the production release of MySQL 4.1 in November 2004. It is designed to provide high availability and high performance, while allowing for nearly...
, on the NDB storage engine of MySQLMySQLMySQL 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...
External links
- http://dev.mysql.com/tech-resources/articles/storage-engine/part_3.html