Базы данных

Вид материалаДокументы

Содержание


Вопрос № 12 СУБД для ПЭВМ
Манипулирование данными
Планируемый запрос
Непланируемый запрос
Оптимизация и выполнение
Защита и поддержка целостности данных
Восстановление данных и поддержка параллельности
Словарь данных
Подобный материал:
1   ...   8   9   10   11   12   13   14   15   16

Вопрос № 12 СУБД для ПЭВМ


Система управления базой данных (СУБД) представляет собой программное обеспечение, которое управляет всем доступом к базе данных. Концептуально это происходит следующим образом (см. рис. 2).
  1. Пользователь выдает запрос на доступ к данным, применяя определенный подъя­зык данных (обычно это язык SQL).
  2. СУБД перехватывает этот запрос и анализирует его.
  3. СУБД просматривает внешнюю схему (ее объектную версию) для этого пользователя, соответствующее отображение "внешний—концептуальный", концептуальную схему, отображение "концептуальный-внутренний" и определения структур хранения.
  4. СУБД выполняет необходимые операции в хранимой базе данных.

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

Конечно, описание предыдущего примера весьма упрошено; в частности, в данном случае предполагается, что весь процесс основан на интерпретации (т.е. анализ запроса, проверка различных схем и другие процедуры осуществляются непосредственно во время выполнения). Однако интерпретация обычно характеризуется невысокой производи­тельностью, поскольку на ее выполнение затрачивается много времени. На практике обычно существует возможность предварительно откомпилировать запрос на доступ к данным до начала его выполнения; в частности, в современных системах SQL применя­ется именно такой подход.

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



Рис. 1. Основные функции и компоненты типичной СУБД
  • Определение данных

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