Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекции / Л-1 - Понятие и функции СУБД

.pdf
Скачиваний:
11
Добавлен:
28.06.2021
Размер:
535.64 Кб
Скачать

3. Управление буферами оперативной памяти

Если при обращении к любому элементу данных будет производиться обмен с внешней памятью, то система будет работать со скоростью устройства внешней памяти.

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

Вразвитых СУБД поддерживается собственный набор буферов оперативной памяти с собственной дисциплиной замены буферов.

4. Управление транзакциями

Транзакция – последовательность операций над БД, рассматриваемых СУБД как единое целое. Инициализируется пользователем или прикладной программой.

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

Поддержание механизма транзакций – обязательное условие для любых СУБД (особенно важно для многопользовательских).

5. Ведение журнала изменений базы данных

СУБД должна быть в состоянии восстановить последнее согласованное состояние БД после любого сбоя.

Аппаратные сбои:

мягкие сбои (аварийное выключение питания);

жесткие (потеря информации на внешних носителях).

Программные сбои:

аварийное завершение работы СУБД;

аварийное завершение пользовательской программы.

Для восстановления БД нужно располагать дополнительной информацией (ведение журнала изменений БД).

6. Поддержка целостности данных

СУБД должна:

содержать сведения о правилах, которые нельзя нарушать при работе с данными;

обладать инструментами контроля за тем, чтобы данные и их изменения соответствовали заданным правилам.

Аспекты целостности необходимо учитывать при проектировании БД и во время ее использования.

Правила сохранения непротиворечивости данных должны быть заданы на удобном языке и храниться в системном каталоге. Обычно они определяются администратором БД и не зависят от пользователя.

7. Контроль доступа к данным

СУБД должна иметь механизм, защищающий БД от несанкционированного доступа:

избирательный подход – пользователь обладает различными правами при работе с разными объектами;

обязательный подход – каждому объекту присваивается некоторый классификационный уровень, а каждый пользователь обладает некоторым уровнем допуска.

Система безопасности может быть создана для всей БД или для некоторой совокупности данных.

Регистрация контрольного следа выполняемых операций помогает обнаружить нарушителя.

8. Управление параллельным доступом

Должен обеспечиваться параллельный доступ множества пользователей к совместно обрабатываемым данным.

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

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

Типичная структура СУБД

Типовая организация современной СУБД

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

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

пользовательские интерфейсы;

утилиты администратора БД (АБД).

Компоненты ядра СУБД

Менеджер данных (управление данными во внешней памяти).

Менеджер буферов (управление буферами оперативной памяти).

Менеджер транзакций (управление транзакциями).

Менеджер журнала (журнализация).

Функции компонентов взаимосвязаны. Компоненты взаимодействуют по продуманным протоколам.

Ядро СУБД имеет собственный интерфейс. Он недоступен пользователям напрямую. Используется в программах, производимых компилятором SQL, и утилитах БД.

Утилиты администратора БД

Образуют библиотеку программ обслуживания БД в привилегированном режиме (работа пользовательских средств параллельно утилитам не разрешена). Функции:

подготовка дисковой памяти к размещению БД;

подготовка справок о составе БД, структуре файлов и т.д.;

загрузка и дозагрузка файла БД;

модификация БД;

модификация файла (таблицы, группы таблиц);

выгрузка образа БД (файла) для сохранения в архиве;

создание и ведение словаря данных и др.