Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
экзамен / БАЗЫ ДАННЫХ-конспект лекций.doc
Скачиваний:
90
Добавлен:
06.02.2018
Размер:
203.26 Кб
Скачать

1.3. Принципы функционирования субд

СУБД – это программа, реализующая следующие функции: 1) обмен управляющими воздействиями с прикладным программным обеспечением и операционной системой в процессе передачи данных из прикладной программы в БД и обратно; 2) преобразование данных в процессе передачи в соответствии с описанием внешних схем; 3) обеспечение защиты данных от несанкционированного доступа; 4) обеспечение многопользовательского доступа к данным. Перечислен минимальный набор функций, которым должна обладать СУБД.

Схема функционирования СУБД:

На схеме сдвоенными стрелками обозначены потоки данных, одиночными – управляющие воздействия.

Последовательность действий, осуществляемых в процессе чтения записей из БД:

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

2. СУБД находит описание внешней схемы, переносит его в буфер и при необходимости проверяет пароль доступа.

3. СУБД просматривает схему БД и выделяет отношения и связи, необходимые для реализации запроса. Осуществляется формальная оптимизация запроса.

4. СУБД просматривает физическое описание и определяет методы доступа для поиска данных. Одновременно выполняется физическая оптимизация запроса (минимизация количества операций ввода-вывода).

5. СУБД передает последовательность команд на чтение блоков операционной системе и передает ей управление.

6. Операционная система считывает блоки данных и записывает их в системные буфера. Затем передает управление СУБД.

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

Примечание. Пункты 4–7 выполняются циклически. Чем лучше СУБД оптимизирует запрос, тем меньше будет циклов.

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

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

1.4. Языковые средства для работы с бд

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

Для решения этой проблемы традиционные языки программирования расширяются языком описания данных (ЯОД) и языком манипулирования данных (ЯМД). ЯОД предназначен для формирования внешних схем, схемы БД и физического описания данных: формируется структура записей, типы и имена атрибутов, устанавливаются взаимосвязи между данными. ЯОД физического уровня предназначен для формирования способов адресации и выбора методов доступа. ЯМД предназначен для формирования запроса к БД: поиск, дополнение, модификация и удаление. Расширением ЯМД являются системные утилиты для реорганизации данных.

Способы организации ЯОД и ЯМД:

1. Языки задаются как расширение классического языка программирования: а) работа с БД осуществляется посредством вызова процедур на традиционном языке программирования (ЯМД СУБД VISTA); б) классический язык дополняется синтаксически правильными конструкциями для описания и манипулирования данными; необходима разработка расширенного транслятора, понимающего семантику новых операторов(СУБД ADABAS для IBM-360/370); в) внутри текста программы оформляются независимые блоки на специализированном языке (ЯОД СУБД VISTA), программа должна быть предварительно обработана специализированным транслятором, который специализированные блоки преобразует в конструкции классического языка; далее текст обрабатывается традиционным транслятором.

2. Функции ЯОД и ЯМД реализуются средствами СУБД. Имеется встроенный язык, реализующий не только ЯОД и ЯМД, но и классические операции традиционных языков и операторы пользовательского интерфейса (СУБД dBase, FoxPro и т.д.).

3. Разработка независимых ЯОД и ЯМД. Такой подход наиболее полно реализует принцип независимости данных. Требуется стандартизация языков. Пример: SQL.

Соседние файлы в папке экзамен