Файл: Учебное пособие СанктПетербург 2017.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 10.11.2023

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

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

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

11 ция скрыта. Например, система распределения работ использует сведения о квалификации сотрудника, но ее не интересуют сведения об окладе, домаш- нем адресе и телефоне сотрудника, и наоборот, именно эти сведения ис- пользуются в подсистеме отдела кадров. Отделение внешнего уровня от концептуального обеспечивает логическую независимость данных.
Рисунок 4 – Трехуровневая модель СУБД, предложенная ANSI-SPARC
2. Концептуальный уровень лежит в основе архитектурыANSI-
SPARC. Он описывает объекты и их взаимосвязи без указания способов их физического хранения, объединяя данные, используемые всеми приложе- ниями, работающими с данной БД. Фактически концептуальный уровень отражает обобщенную модель предметной области (объектов реального ми- ра), для которой создавалась база данных.
3. Внутренний (физический) уровень — позволяет скрыть подроб- ности физического хранения данных (носители, файлы, таблицы, триггеры) от концептуального уровня. Он содержит детальное описание структур дан- ных и физической организации файлов с данными, описание вспомогатель- ных структур (индексов), используемых для ускорения поиска, сведения о распределении дискового пространства для хранения данных и индексов, сведения о сжатии данных и выбранных методах их шифрования и т.д.
Отделение внутреннего уровня от концептуального обеспечивает так называемую физическую независимость данных.
Эта архитектура позволяет обеспечить логическую (между уровнями 1 и 2) и физическую (между уровнями 2 и 3) независимость при работе с дан- ными. Логическая независимость предполагает возможность изменения од- ного приложения без корректировки других приложений, работающих с

12 этой же базой данных. Физическая независимость предполагает возмож- ность переноса хранимой информации с одних носителей на другие при со- хранении работоспособности всех приложений, работающих с данной базой данных.
Как показывает изучение трехуровневой архитектуры БД, концепту- альная схема является самым важным уровнем представления базы данных.
Она поддерживает все внешние представления, а сама поддерживается сред- ствами внутренней схемы. Внутренняя схема является всего лишь физиче- ским воплощением концептуальной схемы. Именно концептуальная схема призвана быть полным и точным представлением требований к данным в рамках некоторой предметной области.
1.4.2 Классификация моделей данных согласно архитектуре ANSI-
SPARC
Одними из основополагающих в концепции баз данных являются обобщенные категории "данные" и "модель данных".
Понятие "данные" в концепции баз данных — это набор конкретных значений, параметров, характеризующих объект, условие, ситуацию или лю- бые другие факторы. Примеры данных: Петров Николай Степанович, $30 и т.д.
Данные не обладают определенной структурой, данные становятся ин- формацией тогда, когда пользователь задает им определенную структуру, то есть осознает их смысловое содержание. Поэтому центральным понятием в области баз данных является понятие модели. Не существует однозначного определения этого термина, у разных авторов эта абстракция определяется с некоторыми различиями, но, тем не менее, можно выделить нечто общее в этих определениях.
Модель данных – это некоторая абстракция, которая, будучи прило- женной к конкретным данным, позволяет пользователям и разработчикам трактовать их уже как информацию, то есть сведения, содержащие не только данные, но и взаимосвязь между ними.
На рис. 5 и 6представлена классификация моделей данных в соответст- вии с трехуровневой архитектурой, предложенной предложенная ANSI-
SPARC. Так, модели данных, обозначенные на рисунках как физические, со- ответствуют первому (нижнему) уровню архитектуры ANSI-SPARC, датало- гические модели можно отнести ко второму, внутреннему уровню архитек- туры, а инфологические модели соответствуют концептуальному уровню ар- хитектуры, изображенной на рис. 4.


13
Рисунок 5 – Классификация моделей данных
Рисунок 6 – Развернутая классификация моделей данных

14
Инфологическая (информационно-логическая)или семантическая
модель данных – это модель отображения предметной области в виде ин- формационных объектов и связей между ними. При этом под информацион- ным объектом понимается абстрактные объект, информацию о свойствах ко- торого предполагается хранить в БД. Такими информационными объектами, например, могут быть: СТУДЕНТ, ГРУППА, ФАКУЛЬТЕТ и др.
Такая модель создаѐтся без ориентации на какую-либо конкретную
СУБД. Термины «инфологическая модель», «семантическая модель» и «кон-
цептуальная модель» являются синонимами. Кроме того, в этом контексте равноправно могут использоваться слова «модель базы данных» и «модель
предметной области» (например, «концептуальная модель базы данных» и
«концептуальная модель предметной области»), поскольку такая модель яв- ляется как образом реальности, так и образом проектируемой базы данных для этой реальности.
Конкретный вид и содержание концептуальной модели базы данных определяется выбранным для этого формальным аппаратом. Обычно исполь- зуются графические нотации, подобные ER-диаграммам.
Чаще всего концептуальная модель базы данных включает в себя:

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

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

адекватное отображение предметной области;

полнота модели (модель должна содержать информацию, достаточ- ную для создания БД);

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


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

разделить сложный процесс отображения «предметная область – база данных» на несколько итеративных более простых отображений;

обеспечить специализацию разработчиков баз данных; возможность работать разным категориям пользователей с моделью соответствующего уровня;

предоставить возможность активного и конструктивного участия в разработке баз данных лицам, не имеющим профессиональных навыков в об- ласти обработки данных;

создать предпосылки автоматизации проектирования баз данных путем формализованного перехода с одного уровня моделей на другой.
1.4.3 Модели представления данных, поддерживаемые СУБД
Логическую структуру данных, хранимых в базе, называют моделью представления данных. Вид модели и используемые в ней типы структур данных отражают концепцию логической организации данных и их обработ- ки, используемую в СУБД. Вид модели данных, поддерживаемой СУБД, яв- ляется одним из важнейших признаков классификации СУБД — иерархиче-
ские, сетевые, реляционные, объектно-ориентированные, семантические и др.
Иерархическая модель представляет совокупность элементов, связанных между собой по принципу «дерева» (связного ациклического графа) (рис. 7).
Рисунок 7 – Иерархическая модель данных
Отличительными признаками иерархической структуры являются:

каждый элемент является либо управляющим, либо подчиненным, либо и тем и другим одновременно;

существует один и только один только управляющий элемент;

существует, по крайней мере, один только подчиненный элемент;

любой подчиненный элемент непосредственно взаимодействует с од-

16 ним и только одним управляющим элементом;

связи между элементами на одном уровне отсутствуют;

к каждому элементу существует только один путь от корневого эле- мента.
Сетевая модель позволяет отображать разнообразные взаимосвязи эле- ментов данных в виде произвольного графа (рис. 8).
Рисунок 8 –Сетевая модель данных
Реляционная
модель
получила название от английского терминаrelation(отношение).Ее предложил в70-х годах прошлого века из- вестный американский специалист фирмы IBM Эдгар Кодд.
Реляционные модели характеризуются простотой структуры данных, удобным для пользователя табличным представлением и возможностью ис- пользования формального аппарата реляционной алгебры и реляционного ис- числения.
Реляционная модель ориентирована на представление данных в виде плоских (двумерных) таблиц (отношений).
Объектно-ориентированная модель представляет собой синтез сете- вой и реляционной моделей. Она ориентирована на использование методов объектно-ориентрованного программирования, в котором существенными яв- ляются понятия инкапсуляции, наследования и полиморфизма.
Семантическая модель данных ориентирована на отражение семанти- ки (смысла) данных и их взаимодействия.
Ключевыми понятиями семантической модели являются
сущность(Entity), атрибут (Attribute) и связь (Relationship).
Семантическая модель данных используется в настоящее время, как правило, на начальных стадиях создания информационных систем вообще и их баз данных в частности. Поэтому именно эта модель реализована в боль- шинстве CASE-средств разработки информационных систем.
2 РЕЛЯЦИОННАЯ МОДЕЛЬ ДАННЫХ
2.1 Основные понятия реляционной модели данных
Реляционная модель данных (РМД) некоторой предметной области представляет собой набор отношений, изменяющихся во времени. При соз-


17 дании информационной системы совокупность отношений позволяет хранить данные об объектах предметной области и моделировать связи между ними.
Элементы РМД и формы их представления приведены в табл. 1.
Таблица 1 – Элементы реляционной модели
Элемент реляционной модели
Форма представления
Сущность
Описание свойств объекта
Отношение
Таблица
Кортеж
Строка таблицы
Схема отношения
Строка заголовков столбцов таблицы
(заголовок таблицы)
Атрибут
Заголовок столбца таблицы
Значение атрибута
Значение поля в записи
Домен
Множество допустимых значений атрибу- та
Первичный ключ
Один или несколько атрибутов
Тип данных
Тип значений элементов таблицы
Сущность есть объект любой природы, данные о котором хранятся в базе данных. Данные о сущности хранятся в отношении.
Отношение является важнейшим понятием и представляет собой дву- мерную таблицу, содержащую некоторые данные.
На рис. 8 приведен пример представления отношения СОТРУДНИК.
Атрибуты представляют собой свойства, характеризующие сущность.
В структуре таблицы каждый атрибут именуется, и ему соответствует заго- ловок некоторого столбца таблицы.
Формально, если переставить атрибуты в отношении, то получается новое отношение. Однако в реляционных БД перестановка атрибутов не при- водит к образованию нового отношения.
Схема отношения (заголовок отношения) представляет собой список имен атрибутов. Например, для отношения, приведенного на рисунке 8 схема отношения имеет вид: СОТРУДНИК(ФИО, Отдел, Должность, Д_Рождения).
Множество собственно кортежей отношения часто называют содержимым
(телом) отношения.
Схема отношения – это именованное множество пар {имя атрибута,
имя домена (или типа данных, если понятие домена не поддерживается)}.
Кортеж, соответствующий данной схеме отношения, – это множест-
во пар {имя атрибута, значение}, которое содержит одно вхождение каждого
имени атрибута, принадлежащего схеме отношения.

18
«Значение» является допустимым значением домена данного атрибута.
Отношение – это множество кортежей, соответствующих одной
схеме отношения.
Отношение СОТРУДНИК содержит 3 кортежа. Кортеж рассматривае- мого отношения состоит из 4 атрибутов, каждый из которых выбирается из соответствующего домена. Каждому кортежу соответствует строка таблицы
(рис. 9).
Рисунок 9 – Представление отношения СОТРУДНИК
В общем случае порядок кортежей в отношении, как и в любом множе- стве, не определен. Однако в реляционных СУБД для удобства кортежи все же упорядочивают. Чаще всего для этого выбирают некоторый атрибут, по которому система автоматически сортирует кортежи по возрастанию или убыванию. Если пользователь не назначает атрибута упорядочения, система автоматически присваивает номер кортежам в порядке их ввода.
1   2   3   4   5   6   7   8   9   ...   12

Домен представляет собой множество всех возможных значений опре- деленного атрибута отношения. Отношение СОТРУДНИК включает 4 доме- на. Домен 1 содержит фамилии всех сотрудников, домен 2 — номера всех от- делов фирмы, домен 3 — названия всех должностей, домен 4 — даты рожде- ния всех сотрудников. Каждый домен образует значения одного типа данных, например, в данном случае, числовые или символьные.
Математически отношение можно описать следующим образом. Пусть даны n множеств D
1
, D
2
, D
3
,..., D
n
, тогда отношение R есть множество упоря- доченных кортежей <d
l
, d
2
, d
3
,..., d
n
>, где d
k
D
k
, d
k
атрибут, a D
k

домен отношения R.
Обычным интуитивным представлением отношения является таблица, заголовком которой является схема отношения, а строками – кортежи отно- шения В этом случае имена атрибутов именуют столбцы этой таблицы. По- этому иногда говорят «столбец таблицы», имея в виду «атрибут отношения».
Реляционная база данных – это набор отношений, имена которых
совпадают с именами схем отношений в схеме БД.

19
Как видно, основные структурные понятия реляционной модели дан- ных (если не считать понятия домена) имеют очень простую интуитивную интерпретацию, хотя в теории реляционных БД все они определяются абсо- лютно формально и точно.
2.2 Фундаментальные свойства отношений. Понятие первичного
ключа
Свойства реляционных отношений базируются на общей теории мно- жеств. При этом понятие множества будем считать первоначальным и интуи- тивно ясным.
Множество состоит из элементов и определяется своими элементами.
Существенными при этом являются следующие обозначения и операции над множествами.
Основные
обозначе-
ния:

Множество: А={а
1
, а
2
, ..., а
n
}, а
i

А;

Множество А, состоящее из элементов а, удовлетворяющих условию Р: А={а| а Р};

Пустое множество:

;

А является подмножеством В: А

В;

А не является подмножеством В: А

В;

Множества А и В совпадают: А=В.
Основные
операции:
1) Объединение: А
В = {а| а А а ∈В}
2) Пересечение: А ∩ В = {а| а

А

а

В}
3) Разность: А \ В = {а| а

А

а

В}
4) Декартово произведение: А

В = {(а, в): а
А b В }
5) Бинарным отношением называется всякое подмножество
С = А

В, причем аRв, а
А b В (R– символ отношения)
6) N – арное отношение по аналогии, где Y = А В ... С
Свойства
отноше-
ний:
1) Рефлексивность:

а Аа Rа
2) Антирефлексивность: условие рефлексивности не выполняется
3) Симметричность:

а
i
А

а
j
Аа
i
Ra
j
а
j
Ra
i
4) Антисимметричность: условие симметричности не выполняется
5) Тождественность:

а
i

А


а
j

А а
i
Ra
j
а
j
= a
i
6) Транзитивность:

а
i

А


а
j

А


а
k

А а
i
Ra
j

а
j
Ra
k
а
i
Ra
k
7) Полнота:

(аi, аj) всегда выполняется а
i
Ra
j
а
j
Ra
i
С учетом введенных понятий определяются свойства реляционных от- ношений.
1. Эквивалентность кортежей
Любая схема отношения есть отношение эквивалентности на множе-
стве своих атрибутов.
Следовательно, кортежи одного отношения эквивалентны (подобны).