Файл: Базы данных - уч. пособие.pdf

Добавлен: 28.11.2018

Просмотров: 9996

Скачиваний: 41

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

26

Глава 2. Модели данных

Рис. 2.3 – Физическое представление информации об успеваемости студентов вуза

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

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

Создавая пользовательское приложение, разработчик определяет перечень таб-

лиц и полей этих таблиц, необходимых для ввода или вывода данных. На рисун-
ке 2.4 представлен внешний вид отчета и внешнее представление БД, необходимое
для его создания.

Рис. 2.4 – Внешний вид отчета об успеваемости студентов вуза

и соответствующее внешнее представление

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Описание концептуального и соответствующего ему физическо-
го представления (описание структуры БД) называется схемой
БД
, хранится автономно и создается разработчиком до того,
как начнет наполняться БД.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


background image

2.2 Развитие моделей данных

27

Описание подмножества концептуального представления, которое соответству-

ет внешнему представлению для некоторого приложения (описание части структу-
ры БД, доступной программе обработки), называется подсхемой [2]. С помощью
схемы и подсхемы достигается уровень развития СУБД, при котором обеспечива-
ется принцип независимости данных от прикладных программ, а также неизмен-
ность внешних представлений при изменении структуры данных, которые не на-
рушают функциональных возможностей соответствующих прикладных программ.

Разработчику, создавая пользовательское приложение, оперирующее данными,

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

Таким образом, одна из главных задач разработчика (администратора) базы

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

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

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

2.2 Развитие моделей данных

Какие бы СУБД мы ни рассматривали, в основе каждой лежит использование

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

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

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

При этом объекты представляют структуру данных, а с помощью операторов

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

За время эволюции БД сформировались понятия о следующих видах моделей

данных:

• иерархической;

• сетевой;

• реляционной;

• объектно-ориентированной.

Иерархическая и сетевая модели относятся к классу так называемых дореляци-

онных моделей данных, явившихся базисом для создания дореляционных СУБД.


background image

28

Глава 2. Модели данных

Появление технологии организации БД послужило толчком для дальнейшего

развития и совершенствования автоматизированной комплексной обработки струк-
турированной информации; были сформулированы особенности концепции БД:

1) информационно описывается совокупность объектов некоторой предмет-

ной области [2]. Это могут быть объекты разнородных типов (документы,
товары, сотрудники, организации и др.). Идея такого подхода заключает-
ся в том, что объекты выбранной предметной области должны обладать
определенными свойствами (значениями, параметрами, характеристиками
и т. п.), с помощью которых пользователь мог бы получить полное пред-
ставление о выбранном объекте. Отметим, что для разных объектов зна-
чения разных параметров могут относиться к одному типу данных (сим-
вольному, логическому и т. д.) и могут быть выбраны из одного множества
(определены на одном домене);

2) при автоматизированном моделировании предметной области должны вы-

полняться следующие требования:

• каждому параметру объекта предметной области соответствует дан-

ное, значению параметра у конкретного объекта — значение данно-
го в записи, соответствующей этому объекту. Данное-идентификатор
объекта (может быть составное данное) — параметр, по которому од-
нозначно можно определить объект, называемый ключевым данным
записи;

• перечень однотипных объектов с указанием их характеристик соот-

ветствует таблице, в которой одному объекту соответствует одна ли-
бо несколько строк, соответственно параметру объекта соответствует
столбец таблицы.

Необходимость хранения и эффективного использования информационной мо-

дели предметной области явилась одной из основных причин возникновения кон-
цепции БД и использования СУБД [2].

Здесь необходимо отметить, что существует еще один тип модели данных, не

представленный выше, который в некоторых источниках [2] носит название «ли-
нейная модель данных».

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

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

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Далее под структурой данных будем понимать совокупность ин-
формационных элементов и связей между ними. А собственно под
моделью данных будем понимать соответствующий тип струк-
туры данных и типовые операции по управлению данными в этих
структурах.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


background image

2.2 Развитие моделей данных

29

Следует также заметить, что когда говорят о структуре данных как о моде-

ли данных, то имеют в виду логическую структуру, под которой понимают пред-
ставление информационных элементов и связей между ними вне зависимости от
способа их размещения в памяти компьютера [2]. Структуру же, в которой опреде-
лены поля связи, типы данных, технология размещения данных, принято называть
физической структурой (или физическим представлением).

Линейную структуру данных формально можно представить в виде плоской

таблицы, для которой характерны следующие свойства [2]:

• элементами такой структуры являются простые данные, разделение кото-

рых на составляющие не имеет смысла;

• каждое данное (поле) имеет имя (идентификатор) и множество возможных

значений, задаваемых словарем, диапазоном или правилом формирования;

• множество данных, составляющих структуру, описывает множество одно-

типных объектов;

• все экземпляры структуры данных (записи) однородны, при этом порядок

следования данных во всех экземплярах структуры один и тот же, а макси-
мальный размер и тип данного одного имени во всех экземплярах струк-
туры одинаковы. Естественно, что разные данные могут иметь различные
размеры и типы.

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

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

На рисунке 2.5 изображена простая линейная структура, представленная в виде

таблицы, содержащая однородные данные, первичным ключом в которой является
«№ зачетной книжки», однако поле «№ студенческого билета» тоже однозначно
определяет студента, такое поле называется альтернативным первичным клю-
чом
. Заголовок линейной структуры называется схемой.

Рис. 2.5 – Линейная структура данных «Студенты»

Над линейными структурами возможно применение основных операций по

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

• вставка — добавление новых записей в структуру;

• удаление — удаление записей из структуры;

• замена — изменение значений данных в указанных записях;

• выборка — отбор конкретных экземпляров структуры, необходимых для даль-

нейшей обработки.


background image

30

Глава 2. Модели данных

Для описания более сложных моделей данных (за исключением объектно-

ориентированной) в качестве основной составляющей будем использовать линей-
ные структуры данных, при этом необходимо учитывать типы взаимосвязей, воз-
никающие между разными простыми структурами. Принято различать следую-
щие взаимосвязи: «один-к-одному» — (1:1); «один-ко-многим» — (1:М); «многие-
ко-многим» — (М:М). Связи между структурами данных являются неотъемлемой
частью концептуальной модели разрабатываемой БД.

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

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Иерархическая модель данных — это модель, в которой данные
представлены в виде иерархической (древовидной) структуры, со-
стоящей из объектов (данных) различных уровней.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

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

взаимосвязанных объектов, находящихся в строгой иерархии. Такая структура со-
стоит из узлов (элементов, сегментов) — совокупности атрибутов данных, описы-
вающих объект, и ветвей — связей между типами объектов.

На рисунке 2.6 представлена иерархическая структура данных (стрелка ука-

зывает направление в иерархии от старшего к подчиненному). Так, каждому эк-
земпляру структуры СТУДЕНТЫ соответствует несколько экземпляров структуры
ПЛАТА ЗА ОБУЧЕНИЕ и структуры УСПЕВАЕМОСТЬ, которой, в свою очередь,
соответствует несколько экземпляров структуры КОНТРОЛЬНЫЕ ТОЧКИ.

Рис. 2.6 – Иерархическая структура данных