Лаборатория информационных ф систем Кафедра Автоматики и телемеханики Проф. М. Ю. Богатырев Базы данных и знаний Технология концептуального ц у моделирования биомедицинских данных Лекция 3 2 3. Проектирование баз данных 11. 2. 3 3. 4. Иерархическая модель данных Сетевая модель данных Реляционная модель данных Преобразование CASE-моделей данных правила Джексона Д 5. Исследование модели «сущность-связь» 6. Реализация баз данных в выбранной платформе. 3 Иерархическая модель данных Математическая модель: граф-дерево Иерархическая БД БД: упорядоченный набор деревьев Первая р иерархическая р р СУБД: Д Information Management System (IMS) фирмы IBM, разработанная в 1968 4 Иерархическая модель данных Манипулирование данными Достоинства: •Найти Н й указанное дерево БД •Перейти от одного дерева к другому; •Перейти от одной записи к другой внутри дерева •Перейти от одной записи к другой в порядке обхода иерархии; •Вставить новую запись в указанную позицию; •Удалить текущую запись. Естественная система разграничения доступа к данным согласно иерархии О Ограничения целостности Основное правило: никакой потомок не может существовать без б своего родителя. Недостатки: Необходимость хранить вместе с данными их положение в иерархии 5 Сетевая модель данных Сетевая модель данных является расширением иерархической модели: В иерархических структурах записьпотомок должна иметь в точности одного предка; в сетевой структуре данных потомок может иметь любое число предков. Математическая модель: граф 6 С Сетевая модель данных Манипулирование данными •Найти конкретную у запись в наборе однотипных записей ; •Перейти от предка к первому потомку по некоторой связи; •Перейти к следующему потомку в некоторой связи; •Перейти от потомка к предку по некоторой связи; •Создать новую запись; Достоинства: •Уничтожить запись; Нет ограничений •Модифицировать М ф запись; целостности •Включить в связь; •Исключить из связи; Недостатки: •Переставить П в другую связь и т.д. Вариант связи: адрес Необходимость хранить вместе с данными их адреса 7 Реляционная модель данных Определение. Отношением R на множествах доменов D1, D2, …, Dn называется подмножество их декартова произведения. ? R⊂ D ×D 1 2 × ... × Dn Пример построения отношения Домены: Декартово произведение D1 × D2 × D3 Окончательно: ⎧c2 = Я Яков, школьник,1994 1994 ⎫ ⎪ ⎪ D1 = { Иван, Мария, Яков} c1 = Иван, школьник,1980 R = ⎨ c3 = Иван, студент,1982 ⎬ D2 = {школьник , студент у } c2 = Иван, школьник,1982 ⎪ ⎪ c = Мария , студент д ,1982 ............................................... ⎩ 4 ⎭ D = {1980, 1982, 1994} 3 c3 = Иван, студент,1982 .............................................. c4 = Мария, студент,1982 8 Р Реляционная модель данных Свойства отношений Схема отношения: набор его атрибутов Таблица отношения Атрибуты отношения Имя Статус Год рождения Яков школьник 1994 Иван студент 1982 Мария студент 1982 Тело отношения Тело отношения - это множество его кортежей Ключ отношения набор атрибутов отношения, однозначно идентифицирующий каждый д из его кортежей. Простой ключ: один атрибут Составной ключ: несколько атрибутов. 9 Реляционная модель данных Свойства отношений •В отношении нет одинаковых д кортежей. •Кортежи отношения не упорядочены. Одно и то же отношение может быть изображено разными таблицами, в которых строки идут в различном порядке. •Атрибуты отношения не упорядочены (слева направо). Т.к. каждый атрибут р у имеет ууникальное имя в пределах р д отношения,, то порядок р д атрибутов р у не имеет значения. Одно и то же отношение может быть изображено разными таблицами, в которых столбцы идут в различном порядке. •Все Все значения атрибутов атомарны. атомарны Это следует из того того, что лежащие в их основе атрибуты имеют атомарные значения. Это четвертое отличие отношений от таблиц - в ячейки таблиц можно поместить что угодно массивы структуры массивы, структуры, и даже другие таблицы таблицы. 10 Р Реляционная б база данных Определение. Реляционная база данных – э да это о сис система е ао отношений, оше ий, дополненная принципом ц целостности. Достоинства: Недостатки: Нет ограничений на любые связи между отношениями. Все отношения равноправны Необходимость создавать систему поддержки целостности Таблица 2.3.1 11 Таблица 2.3.2 Связывание отношений й Имя Статус Год рождения Город Улица Дом Яков школьник 1994 Уфа Солнечная 1 Иван студент 1982 Пенза Лесная 12 Мария студент 1982 Пермь Морская 2 Имя Статус Год рождения Яков школьник 1994 Иван студент 1982 Мария студент 1982 связь Город Улица Дом Уфа Солнечная 1 Пенза Лесная 12 Пермь Морская 2 Преобразование р р CASE-моделей д д данных Правила Джексона ПРАВИЛО 1 Смысл правила. правила Если степень связи равна 1:1 и класс принадлежности обеих сущностей является обязательным, то требуется только одно от-ношение. Ключом этого отношения может быть ключ любой из двух сущностей. Обе сущности задают один и тот же объект, объект отражая разные его атрибуты. Согласно правилу, правилу все эти данные можно хранить в одной таблице. Джексон Г. Проектирование реляционных баз данных для использования с микро-ЭВМ. - М.: Мир, 1991. - 252 с. Правила Джексона ПРАВИЛО 2. Если степень связи равна 1:1 и класс принадлежности одной сущности является обязательным, а другой - необязательным, то необходимо построение двух отношений. П каждую сущность необходимо Под б выделение одного отношения, при этом ключ сущности должен служить первичным ключом для соответствующего отношения. Кроме того, ключ сущности, для которого класс принадлежности является необязательным, добавляется в качестве атрибута в отношение, выделенное для сущности с обязательным классом принадлежности. Правила Джексона ПРАВИЛО 3. 3 Если степень связи равна 1:1 и класс принадлежности ни одной сущности не является обязательным, то необходимо использовать три отношения: по одному для каждой й сущности, ключи которых служат в качестве первичных в соответствующих отношениях, и одного для связи. Среди своих атрибутов отношение, выделяемое связи, будет иметь по одному ключу от каждой сущности. Правила Джексона ПРАВИЛО 4. Если степень связи равна 1: n и класс принадлежности n-связной сущности является обязательным, то достаточным является использование с ол зо а е д двух у о отношений, о е , по о од одному о у на а каждую а дую сущ сущность, ос , при условии, что ключ каждой сущности служит в качестве первичного ключа для соответствующего отношения. Дополнительно ключ 11-связной связной сущности должен быть добавлен как атрибут в отношение, отводимое n-связной сущности. Правила Джексона ПРАВИЛО 5. Если степень связи равна 1:n и класс принадлежности n-связной сущности является необязательным, то необходимо формирование фор ро а е трех ре отношений: о о е : по о од одному о у дл для каждой а до сущ сущности, ос , причем ключ каждой сущности служит первичным ключом соответствующего отношения, и одного отношения для связи. Связь должна иметь среди своих атрибутов ключ сущности от каждой сущности. Правила Джексона ПРАВИЛО 6. 6 Если степень связи равна т:п, то для хранения данных необходимо три отношения: по одному для каждой сущности, причем ключ каждой й сущности используется в качестве первичного ключа соответствующего отношения, и одного отношения для связи. Последнее отношение должно иметь в числе своих атрибутов ключ – ссылку от каждой сущности. 18 Все на сегодня… В Вопросы?