Важным функциональным компонентом СУБД являются механизмы внутреннего уровня информационной архитектуры системы (в смысле архитектурной модели ANSI/X3/SPARC), реализующие функции среды хранения базы данных. Как уже отмечалось ранее, база данных в действительности представлена полностью в "материализованном" виде только в среде хранения. На всех остальных уровнях архитектуры системы порождаются и исчезают лишь отдельные объекты данных, срок жизни которых ограничивается временем выполнения операций манипулирования данными.
Механизмы среды хранения базы данных в СУБД служат для управления двумя группами ресурсов системы - ресурсами хранимых данных и ресурсами пространства памяти среды хранения. Более точно, они обеспечивают эффективное хранение данных, поддержку структуры хранимых данных, управление пространством памяти базы данных, а также поддержку отображения структуры хранимых данных в пространство памяти, позволяющего определить место их размещения при запоминании и при поиске данных.
Важно отметить, что структура хранимых данных выбирается,исходя из соображений эффективности хранения данных и доступа к ним. Поэтому эта структура может отличаться от структуры данных в том представлении, которое видит пользователь. При обращении к данным в их "логическом" представлении они синтезируются из e` -(,ke данных. В СУБД, поддерживающих графовые модели данных, используется довольно сложные структуры хранимых данных и сложная техника управления хранимыми данными. В реляционных системах, оперирующих существенно более простыми структурами данных, механизмы среды хранения существенно более просты. Будем далее условно называть хранимой записью единицу хранимых данных, которая используется в качестве аргумента в операциях над данными в среде хранения. Эти операции - запомнить новую запись, удалить запись, перезаписать существующую запись, найти запись.
Для хранения базы данных используется внешняя память компьютеров. Это связано с двумя причинами. Энергонезависимость внешней памяти обеспечивает долговременную сохранность базы данных даже в периоды, когда компьютер отключен от источников электроэнергии. Кроме того, обычно довольно велик объем данных, содержащихся в базе данных. Для того чтобы данные из базы данных были доступны для обработки в процессе функционирования СУБД, необходимо нужные порции данных из базы данных прочитывать в оперативную память. Для обмена данными между внешней и оперативной памятью компьютера используются выделенные для этих целей области в оперативной памяти, называемые буферами обмена. Единицей обмена данными обычно служит страница внешней памяти, содержащая некоторое количество хранимых записей. При использовании магнитных дисков это содержимое сектора или кластера на диске. Эффективное управление буферизацией обменов - важная задача СУБД, от способа решения которой существенно зависит производительность системы. Производительность системы базы данных в значительной степени зависит также от используемых методов доступа к хранимым данным. Метод доступа определяет способы организации и размещения хранимых данных в пространстве памяти, а также порядок доступа к ним при обработке. Важная задача методов доступа заключается в обеспечении минимального числа обращений к устройствам внешней памяти для поиска требуемой хранимой записи. Для решения этой задачи в среде хранения наряду с "пользовательскими" данными поддерживаются используемые методами доступа вспомогательные структуры данных, обеспечивающие быстрый поиск нужных данных в среде хранения. Чаще всего для этих целей используются индексы и хеш-таблицы (см.
Далее).
Ниже кратко перечислены функции механизмов среды хранения базы данных:
Определение места размещения новой хранимой записи в пространстве памяти
Выделение необходимого ресурса памяти для хранимой записи и ее запоминание
Формирование и разрушение связей между хранимыми записями
Перезапись обновленной хранимой записи в пространство памяти
Удаление хранимой записи с освобождением занимаемой ею памяти
Поиск хранимой записи в пространстве памяти
Выборка хранимой записи для обработки
Управление буферизацией обменов данными между внешней и оперативной памятью
Учет свободного пространства памяти среды хранения
"Сборка мусора" - возвращение освободившейся памяти в пул свободной памяти для ее повторного использования
Реорганизация хранимых данных с целью устранения фрагментаци свободной памяти.
Все указанные выше функции выполняются по запросам механизмов концептуального уровня данной СУБД. Они позволяют не только поставлять хранимые данные для формирования экземпляров данных концептуальной базы данных, когда к ним производится обращение, но и отображать в хранимых данных те изменения состояния базы данных, которые осуществляются в терминах организации данных более высоких уровней информационной архитектуры системы.