Подсистема хранения

Материал из Википедии — свободной энциклопедии
(перенаправлено с «Database engine»)
Перейти к навигации Перейти к поиску

Подсистема хранения(англ.database engine, storage engine) — компонентСУБД,управляющий механизмами хранения баз данных, илибиблиотека,подключаемая к программам и дающая им функции СУБД[1].

В случае СУБД подсистема хранения отвечает за размещение баз данных (как правило, в файлах) и организацию конкурентного доступа к ним. Обычно СУБД позволяют манипулировать данными и структурами БД с помощью языкаSQL,при этом интерпретатор языка SQL обычно является компонентом СУБД, а не подсистемы хранения.

Библиотека позволяет программе использовать определённый формат файлов баз данных для манипулирования данными. В более сложном случае, она позволяет нескольким программам работать с общими файлами баз данных одновременно, используя те или иные механизмы блокировок.

В некоторых СУБД подсистема хранения неотделима от неё самой, но ряд подсистем могут встраиваться или подключаться к разным СУБД. Существуют СУБД, которые позволяют одновременно использовать несколько подключаемых подсистем хранения, таковы, например, системы семействаMySQL(MariaDB,Percona Server[англ.]), в которых можно подключитьInnoDB,MyISAM,XtraDB,Falcon[англ.],Aria,TokuDB[англ.],MyRocks (на основеRocksDB[англ.]) и некоторые другие. Подключённая подсистема хранения определяет функциональные возможности СУБД в целом, например, XtraDB и InnoDB в сравнении с MyISAM добавляют поддержку транзакций по принципамACIDивнешних ключейNDB Cluster[англ.]— распределение хранимых данных по нескольким узлам.

Некоторые другие известные подключаемые подсистемы хранения:DBM(ключ — значение),SQLite(обычно рассматривается каквстраиваемая СУБД,но часто используется только в качестве подсистемы хранения),Microsoft Jet[англ.](используется вMicrosoft Access,но доступна как отдельно подключаемая подсистема).

  1. database engine Definition from PC Magazine Encyclopedia.Дата обращения: 2 октября 2017.Архивировано27 ноября 2016 года.