Основы проектирования баз данных. Тема 2. Взаимосвязи в моделях и реляционный подход к построению моделей

Содержание

Слайд 2

Физический уровень — собственно данные, расположенные в файлах или в страничных

Физический уровень — собственно данные, расположенные в файлах или в страничных

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

Уровень внешних моделей - уровень на котором определяется видение БД отдельных приложений. Каждое приложение видит и обрабатывает только те данные, которые необходимы именно этому приложению.

Концептуальный уровень — центральное управляющее звено, здесь база данных представлена в наиболее общем виде, который объединяет данные, используемые всеми приложениями, работающими с данной базой данных. Фактически концептуальный уровень отражает обобщенную модель предметной области (объектов реального мира), для которой создавалась база данных. Как любая модель, концептуальная модель отражает только существенные, с точки зрения обработки, особенности объектов реального мира.

ЛОГИЧЕСКАЯ НЕЗАВИСИМОСТЬ

ФИЗИЧЕСКАЯ НЕЗАВИСИМОСТЬ

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

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

Слайд 3

Типы моделей данных Модель данных (МД) – совокупность правил порождения структур

Типы моделей данных

Модель данных (МД) – совокупность правил порождения структур данных

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

Самой первой МД, которая использовалась для построения концептуальных схем была иерархическая модель. Вслед за ней появились сетевые модели. Потом ER-модели, и, как итог развития моделей, возникли реляционные и постреляционные модели. Каждая из перечисленных моделей имеет свои достоинства и недостатки.

Иерархическая модель данных (ИМД) – это модель, в которой абстрактные понятия находятся в отношении предшествования таким образом, что каждому понятию соответствует только один предшественник (родитель). Только одна часть, называемая корнем модели, не имеет предшественника.

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

Иерархическая БД состоит из упорядоченного набора деревьев; или, более точно, из упорядоченного набора нескольких экземпляров одного типа дерева.

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

Слайд 4

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

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

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

Достоинство сетевых МД: данные имеют четкую структуру.
Недостатком сетевых МД является большое количество дополнительной информации о связях.

Реляционная модель данных (РМД) – это модель, в которой данные можно представить в виде отношений, изменяющихся во времени. Традиционно в реляционных системах отношением называют таблицу, кортежем – строку таблицы, а атрибутом – столбец. При этом атрибуты имеют уникальные имена в рамках одного отношения.

Достоинство реляционной модели заключается в простоте для понимания, наглядности и удобстве физической реализации на ЭВМ.
Недостатки реляционной модели данных: модель не допускает представления объектов со сложной структурой, поскольку в ее рамках возможно моделирование лишь с помощью двумерных таблиц. Данные об объектах содержатся, как правило, во многих таблицах, что значительно замедляет обработку данных

Слайд 5

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

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

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

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

а - реляционная модель; б - постреляционная модель

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

Каждый объект характеризуется уникальным идентификатором, состоянием и поведением. Состояние объекта определяется множеством значений его свойств (атрибутов). Поведение объекта описывают методы, называемые процедурами. То есть, составной частью описания объекта являются процедуры, способные производить действия над атрибутами объекта в случае наступления тех или иных событий. Объекты могут объединяться в классы. Экземпляры одного класса отличаются лишь значениями своих свойств, но не своими методами. Методы устанавливаются при определении класса.

Основным достоинством ООМД является способность отображать информацию о сложных объектах. Эта модель обычно применяется для сложных предметных областей, при моделировании которых не хватает функциональности реляционной модели. Недостаток ООМД: неудобство обработки больших массивов данных.

Слайд 6

Объектно-реляционная модель данных (ОРМД) является гибридной моделью, сочетающей возможности реляционной модели

Объектно-реляционная модель данных (ОРМД) является гибридной моделью, сочетающей возможности реляционной модели

с объектными свойствами данных. В ОРМД используются такие объектно-ориентированные компоненты, как инкапсуляция, полиморфизм, наследование и т.п. Отличительная особенность объектно–реляционной модели от ООМД состоит в том, что она основана на стратегии реляционной модели.

Многомерная модель предназначена для аналитической обработки информации. В данной модели используются такие понятия, как агрегируемость, историчность, прогнозируемость данных. Агрегируемость данных - возможность их рассмотрения с различным уровнем обобщения.
Историчность обеспечивает высокий уровень статичности (неизменяемости) данных и их взаимосвязей, а также, в обязательном порядке, привязку данных к временным точкам. Прогнозируемость данных - задание функций прогнозирования и применение их к различным интервалам времени.

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

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

Слайд 7

Реляционная модель данных

Реляционная модель данных

Слайд 8

Слайд 9

Слайд 10

ФУНДАМЕНТАЛЬНЫЕ СВОЙСТВА ОТНОШЕНИЙ

ФУНДАМЕНТАЛЬНЫЕ СВОЙСТВА ОТНОШЕНИЙ

Слайд 11

Реляционная алгебра Основы реляционной алгебры были заложены Э. Коддом. Реляционная алгебра

Реляционная алгебра

Основы реляционной алгебры были заложены Э. Коддом. Реляционная алгебра задает

набор операторов для выполнения операций над реляционными отношениями. Операции реляционной алгебры Кодда можно разделить на две группы: базовые теоретико-множественные и специальные реляционные.

Объединение (UNION) двух совместимых отношений R1 и R2 одинаковой размерности – это отношение R, содержащее все элементы исходных отношений. Повторяющиеся кортежи не включаются.

Пересечение (INTERSECT) двух совместимых по типу отношений R1 и R2 одинаковой размерности – это отношение R с телом, включающим в себя кортежи, одновременно принадлежащие обоим отношениям

Вычитание (MINUS) двух совместимых по типу отношений R1 и R2 одинаковой размерности – это отношение R с телом, состоящим из множества всех кортежей, принадлежащих отношению R1 и не принадлежащих отношению R2.

Слайд 12

Декартово произведение отношений (TIMES) – это бинарный оператор, предназначенный для комбинирования

Декартово произведение отношений (TIMES) – это бинарный оператор, предназначенный для комбинирования

двух отношений. Пусть R1- отношение степени k1 , а R2- отношение степени k2. R = R1 х R2 будет представлять собой множество кортежей таких, что первые k1 элементов кортежа отношения R составляют кортежи отношения R1, а последующие k2 элементов кортежа из R составляются кортежами из R2. Сочетание кортежей из R1 и R2 при образовании кортежа R осуществляется по правилам декартова произведения. Здесь R1 и R2 могут иметь разные схемы. Степень отношения R равна сумме степеней отношений операндов R1 и R2. Мощность отношения R равна произведению мощностей R1 и R2.

Специальные реляционные операторы

Выборка (R WHERE f) отношения R по формуле f представляет собой новое отношение, заголовок которого совпадает с заголовком отношения R, а тело содержит множество кортежей, являющихся подмножеством множества кортежей отношения R, для которых формула f принимает значение истина. Здесь f – логическая формула (предикат), принимающая значение «истина» или «ложь», образованная операндами, представляющими собой имена атрибутов отношений R или литералы, а также скалярными операторами сравнения (=, <>,>, <, >=, <=) и логическими операторами И, ИЛИ, НЕ. Выбор – унарная операция.

Слайд 13

Проекция отношения R по атрибутам X, Y, …, Z обозначается R

Проекция отношения R по атрибутам X, Y, …, Z обозначается R

[X, Y, …, Z], где каждый из указанных атрибутов принадлежит отношению R, – это отношение с заголовком { X, Y, …, Z } и телом, содержащим кортежи отношения R, за исключением повторяющихся кортежей. Повторение одинаковых атрибутов в списке X, Y, …, Z запрещается.

С помощью оператора проекции получается «вертикальное» подмножество атрибутов отношения R с последующим исключением дублирующих кортежей (если они возникают).

Соединение – операция реляционной алгебры, связывающая таблицы. Операция соединения используется для связывания данных между таблицами. Это, возможно, наиболее важная функция любого языка баз данных. ТЭТА–соединение отношений. Пусть отношения R1 и R2 не имеют атрибутов с одинаковыми именами, а символ Θ (греческая буква тэта) обозначает один из операторов сравнения: =, <>, >, <, <=, >=. Тогда Θ–соединением отношения R1 по атрибуту Х с отношением R2 по атрибуту Y является отношение, кортежи которого получаются в результате декартова произведения отношений R1 и R2 и для которых условие X Θ Y принимает значение истина. Другими словами, ТЭТА–соединение это (R1 TIMES R2) WHERE XΘY.

R1 TIMES R2) WHERE X≥ Y

Слайд 14

Частным случаем соединения являются эквисоединение и естественное соединение. Операция эквисоединения характеризуется

Частным случаем соединения являются эквисоединение и естественное соединение. Операция эквисоединения характеризуется

тем, что оператор сравнения в этом соединении – это знак равенства. Операция естественного соединения (операция R1 JOIN R2) применяется к двум отношениям, имеющим общий атрибут (простой или составной). Этот атрибут в отношениях имеет одно и то же имя (совокупность имен) и определен в одном и том же домене (доменах)

Деление отношения. Пусть R1 и R2 – два отношения. Тогда отношение R := R1/R2 может быть получено следующим образом: 1. Результирующее отношение R будет содержать только те атрибуты делимого R1, которых нет в делителе R2. 2. В результирующее отношение R включаются только те недублирующиеся кортежи из R1, декартово произведение которых с делителем R2 содержится в делимом (является подмножеством делимого).

Существует 3 вида взаимосвязей : ассоциация, обобщение и агрегация.
Ассоциация — обозначает наличие логической связи между объектами. С каждой ассоциацией связано понятие мощности, которое может принимать одно из следующих значений: 1:1, 1:М и M:N. Мощность обозначает количество объектов определенного типа, которые будут участвовать в связи.

Слайд 15

связь «один к одному» устанавливается в случаях, когда конкретная строка главной

связь «один к одному» устанавливается в случаях, когда конкретная строка главной

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