23.11. Среда хранения базы данных

Важным   функциональным   компонентом   СУБД   являются   механизмы внутреннего  уровня информационной архитектуры  системы  (в  смысле архитектурной  модели  ANSI/X3/SPARC),  реализующие  функции  среды хранения  базы  данных. Как уже отмечалось  ранее,  база  данных  в действительности представлена полностью в "материализованном"  виде только  в  среде  хранения. На всех остальных  уровнях  архитектуры системы порождаются и исчезают лишь отдельные объекты данных,  срок жизни   которых   ограничивается   временем   выполнения   операций манипулирования данными.

     Механизмы  среды  хранения  базы  данных  в  СУБД  служат  для управления          двумя  группами ресурсов системы -  ресурсами  хранимых данных и ресурсами пространства памяти среды хранения. Более точно, они  обеспечивают эффективное хранение данных, поддержку  структуры хранимых  данных, управление пространством памяти  базы  данных,  а также   поддержку   отображения   структуры   хранимых   данных в пространство  памяти, позволяющего определить место  их  размещения при запоминании и при поиске данных.

     Важно          отметить,  что  структура хранимых  данных  выбирается,исходя  из          соображений эффективности хранения данных и  доступа  к ним.  Поэтому эта структура может отличаться от структуры данных  в том  представлении,  которое видит пользователь.  При  обращении  к данным  в  их  "логическом"  представлении  они  синтезируются   из e`  -(,ke  данных. В СУБД, поддерживающих графовые  модели  данных, используется довольно сложные структуры хранимых данных  и  сложная техника  управления  хранимыми  данными.  В  реляционных  системах, оперирующих   существенно   более  простыми   структурами     данных, механизмы  среды  хранения существенно более  просты.  Будем  далее условно  называть хранимой записью единицу хранимых данных, которая используется в качестве аргумента в операциях над данными  в  среде хранения.  Эти  операции - запомнить новую запись, удалить  запись, перезаписать существующую запись, найти запись.

     Для       хранения   базы  данных  используется   внешняя   память компьютеров.  Это  связано  с двумя причинами.  Энергонезависимость внешней памяти обеспечивает долговременную сохранность базы  данных даже   в       периоды,   когда   компьютер  отключен   от   источников электроэнергии.  Кроме того, обычно довольно  велик  объем  данных, содержащихся  в базе данных. Для того чтобы данные из  базы  данных были  доступны  для  обработки  в процессе  функционирования  СУБД, необходимо          нужные  порции  данных из  базы  данных  прочитывать  в оперативную  память. Для обмена данными между внешней и оперативной памятью компьютера используются выделенные для этих целей области в оперативной  памяти,  называемые буферами обмена.  Единицей  обмена данными обычно служит страница внешней памяти, содержащая некоторое количество хранимых записей. При использовании магнитных  дисков  ­это   содержимое   сектора  или  кластера  на  диске.   Эффективное управление          буферизацией обменов - важная задача СУБД,  от  способа решения которой существенно зависит производительность системы. Производительность системы базы данных в значительной  степени зависит  также  от используемых методов доступа к хранимым  данным. Метод  доступа определяет способы организации и размещения хранимых данных  в  пространстве памяти, а также порядок доступа к  ним  при обработке.          Важная задача методов доступа заключается в обеспечении минимального  числа  обращений  к устройствам  внешней  памяти  для поиска  требуемой хранимой записи. Для решения этой задачи в  среде хранения       наряду  с  "пользовательскими"  данными   поддерживаются используемые  методами  доступа вспомогательные  структуры  данных, обеспечивающие  быстрый поиск нужных данных в среде хранения.  Чаще всего  для       этих  целей  используются индексы  и  хеш-таблицы  (см.

Далее).

Ниже кратко перечислены функции механизмов среды хранения базы данных:

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