Подсистема хранения () — компонент СУБД, управляющий механизмами хранения баз данных, или библиотека, подключаемая к программам и дающая им функции СУБД.
В случае СУБД подсистема хранения отвечает за размещение баз данных (как правило, в файлах) и организацию конкурентного доступа к ним. Обычно СУБД позволяют манипулировать данными и структурами БД с помощью языка SQL, при этом интерпретатор языка SQL обычно является компонентом СУБД, а не подсистемы хранения.
Библиотека позволяет программе использовать определённый формат файлов баз данных для манипулирования данными. В более сложном случае, она позволяет нескольким программам работать с общими файлами баз данных одновременно, используя те или иные механизмы блокировок.
В некоторых СУБД подсистема хранения неотделима от неё самой, но ряд подсистем могут встраиваться или подключаться к разным СУБД. Существуют СУБД, которые позволяют одновременно использовать несколько подключаемых подсистем хранения, таковы, например, системы семейства MySQL (MariaDB, ), в которых можно подключить InnoDB, MyISAM, XtraDB, , Aria, , MyRocks (на основе ) и некоторые другие. Подключённая подсистема хранения определяет функциональные возможности СУБД в целом, например, XtraDB и InnoDB в сравнении с MyISAM добавляют поддержку транзакций по принципам ACID и внешних ключей, а — распределение хранимых данных по нескольким узлам.
Некоторые другие известные подключаемые подсистемы хранения: DBM (ключ — значение), SQLite (обычно рассматривается как встраиваемая СУБД, но часто используется только в качестве подсистемы хранения), (используется в Microsoft Access, но доступна как отдельно подключаемая подсистема).
Примечания
Литература MySQL Administrator’s Bible Chapter 11 «Storage Engines»
Категория:СУБД