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

Модуль1_Организация и управление БД

.pdf
Скачиваний:
12
Добавлен:
16.03.2015
Размер:
1.08 Mб
Скачать

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

Прикладная

Методы

доступа

программа

файловой

 

 

системы

Логические адреса (файл, запись, поле)

Драйвер

Данные

 

Физические

Устройство для

хранения данных

адреса на

устройстве

 

Рис. 2.2. Доступ к данным в файловой системе

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

3 этап. Автоматизированные банки данных. В цепочку преобразований данных между пользователями и устройствами хранения включается СУБД, которая для доступа к базе использует описания данных на разных уровнях. Наличие описаний данных (метабазы) позволяет обращаться к данным по именам и выполнять запросы по условиям на значения данных. Схема доступа к данным показана на рис. 2.3.

12

Прикладная

 

 

 

Прикладная

 

 

 

программа

 

 

 

программа

Методы

Драйвер

 

СУБД

 

доступа

База

 

Конечный

ФС

 

данных

Конечныйп льзователь

 

 

Метабаза

пользователь

 

 

Рис. 2.3. Доступ к интегрированной базе данных

4 этап. Системы представления данных и знаний. Поскольку прикладные программы являются наиболее консервативным элементом АС, то их логику и правила обработки данных в виде системы знаний следует поместить в БД и с помощью системы интерпретации знаний использовать вместо прикладных программ. Знания о предметной области размещаются в базе знаний, создаваемой и управляемой СУБД. Схема организации хранения и доступа к базам данных и знаний показана на рис. 2.4.

 

Конечный

 

 

 

 

 

 

 

 

 

 

 

 

 

пользователКонечный

 

 

 

Интерфейс

 

Машина

 

 

 

 

ь

 

 

пользователя

 

вывода

 

 

 

 

пользователь

 

 

 

 

 

 

 

 

 

СУБД

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Базы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

данных и

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

знаний

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Эксперты в

 

 

Интерфейс

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

предметной

 

 

 

 

 

 

 

 

 

эксперта

 

 

 

 

 

 

 

области

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 2.4. Схема хранения и доступа данных и знаний

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

13

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

Трехуровневая архитектура банка данных

Требования интеграции в единой базе данных многих пользователей и независимости прикладных программ от средств хранения данных реализуются созданием специальной структуры банка данных. Особенность структуры банка состоит в использовании многоуровневого описания хранящихся в базе данных. При минимизации избыточности собственно данных банк использует существенную избыточность в описании данных. Наиболее полная структура, которой соответствует большинство современных систем управления базами данных, имеет три уровня описания хранящихся в базе данных. Верхний или пользовательский уровень образуется набором описаний (подсхем) данных с точки зрения конечных пользователей (КП), групп пользователей или прикладных программ. Эти описания содержат представления о составе и организации данных в виде удобном для отдельных пользователей данных в АС. С помощью подсхемы каждый пользователь имеет доступ только к тем данным, которые ему необходимы для выполнения его задач в АС. Второй (концептуальный) уровень содержит полное логическое описание – схему данных всей базы. Концептуальная схема согласует и объединяет представления о данных всех пользователей. Поэтому концептуальный уровень отражает информационную модель всей предметной области. При создании концептуальной схемы учитываются интересы организации и обработки данных для автоматизированной системы в целом. Логическая схема данных на концептуальном уровне создается и сопровождается в процессе эксплуатации администратором базы данных. На нижнем (внутреннем) или физическом уровне содержится описание размещения данных на носителях информации. Большинство СУБД для хранения данных используют файлы операционной системы, поэтому физический уровень образуется описанием состава и структуры используемых файлов. Взаимодействие уровней описания данных

14

при выполнении запросов к БД иллюстрируется схемой, представленной на рис. 2.5.

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

15

 

 

 

КП 1 . . .

 

 

 

КП m

Прикладная

. . .

 

Прикладная

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

программа n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

программа 1

 

 

 

 

 

 

 

 

 

Подсхема

 

 

 

 

Подсхема

 

 

Подсхема

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Подсхема

 

 

 

 

 

 

 

 

 

 

 

 

 

КП 1

 

 

 

 

 

КП m

 

 

 

ПП 1

 

 

 

ПП n

 

 

 

 

 

 

 

Внешний уровень (пользовательский)

15

 

 

 

 

 

 

 

 

Логическая

 

 

 

 

 

 

 

 

 

схема БД

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

БЛОК

 

 

 

 

Концептуальный уровень

 

 

 

СУБД

 

(администратора БД)

логических хранимых

 

 

 

 

 

 

 

 

записей файлов БД

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Физическая

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. . .

 

Методы доступа

 

 

 

 

 

схема БД

 

 

 

файловой системы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Физический уровень (системного программиста)

Файлы БД

. . . Файлы БД

Рис.2.5. Трехуровневая архитектура банка данных

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

Лекция 3. Модели данных, реализованные в СУБД. Иерархическая модель

В общем случае модель данных (М) – система правил образования допустимых структур и ограничений данных, а также операций управления данными в этих структурах. Таким образом, М = {G, Q}, где:

G = {G1, G2} – множество правил генерации допустимых структур (G1) и множество ограничений базы данных (G2) ;

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

При изучении любой модели данных необходимо рассмотреть:

структуру данных: типы и правила записи ограничений для отдельных элементов данных (полей), правил образования из элементов данных единиц доступа к базе (типовых записей);

17

разрешенные виды связей между типовыми записями в схеме БД;

операторы для создания запросов и управления данными.

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

следующие модели:

иерархическая;

сетевая;

реляционная;

объектно–ориентированная (объектная).

Далее рассматриваются особенности перечисленных моделей.

18

 

Модель данных

 

Правила для

Правила поиска и

 

структур и

управления данными

 

ограничений

 

 

DDL (ЯОД)

DML (ЯМД)

Логическая

Подсхема

Программа

схема

(представление)

обработки БД

База данных

Рис. 3.1. Соответствие понятий, используемых в модели данных

19

Иерархическая модель данных

Структура данных

Схема данных в иерархической базе образуется множеством типов записей, организованных в древовидную структуру. Тип записи имеет имя и состоит из последовательности поименованных полей. Связь возможна только между записями из соседних уровней дерева и имеет тип 1:М. Запись верхнего уровня называется исходная (или предок 1), а нижнего – порожденная (потомок М). Исходная запись в связи является сильной, а порожденная – слабой, и не может существовать без исходной записи.

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

Пример схемы иерархической БД (дерева типовых записей) приведен на рис. 3.2.

ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

(тип корневой записи)

Наименование Адрес . . .

ФАКУЛЬТЕТ

 

 

ОТДЕЛ

 

 

 

 

 

Название Декан

. . .

 

Название

Начальник . . .

 

 

 

 

 

КАФЕДРА

Наименование Заведующий . . .

Рис. 3.2. Пример схемы иерархической БД

20

В схеме БД типовая запись ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ является предком для порожденных типов ФАКУЛЬТЕТ и ОТДЕЛ.

Иерархическая БД состоит из упорядоченного множества экземпляров дерева схемы. Отдельный экземпляр дерева образуется экземпляром корневой записи. Например, корневая запись для УГТУ-УПИ образует экземпляр дерева, в который входят все его потомки.

Одно из возможных состояний базы данных, соответствующей схеме, приведенной на рис. 3.2, представлено на рис. 3.3 (показан один экземпляр дерева).

ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

УГТУ-УПИ Мира 19 . . .

 

 

ФАКУЛЬТЕТ

 

 

 

 

 

 

 

ОТДЕЛ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ФТФ

. . .

 

 

 

 

 

 

 

Планово-финансовый . . .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

РИ-РТФ

Князев С.Т.

 

 

 

 

 

 

Отдел кадров

. . .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

КАФЕДРА

 

 

 

 

 

Бухгалтерия

. . .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

АСУ

. . .

. . .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

АИТ

. . .

. . .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 3.3. Состояние базы данных

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

21