Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
базы данных - конспект лекций.doc
Скачиваний:
12
Добавлен:
23.11.2019
Размер:
801.79 Кб
Скачать

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

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

зачетки

Ф.И.О.

Группа

Специальность

Год рождения

Место жительства

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

Отношение – это набор кортежей. Если таблица имеет n столбцов, то кортежи n-мерные, а отношение имеет степень n.

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

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

Ключ записи – это один или несколько атрибутов, которые однозначно определяют объект. Отношение может иметь несколько ключей.

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

С математической точки зрения отношение – это подмножество декартова произведения доменов.

Если имеем Д1, Д2, …Д к доменов, то полное декартово произведение RД= Д1 х Д2, х …х Д к , где R – отношение, подмножество полного декартова произведения.

Элементами отношения являются кортежи. Список имен атрибутов отношения называется схемой отношения R(А1, А2, …Аn).

Таким образом, реляционная модель данных – это набор конечных отношений. Схемы реляционной базы данных можно представить в виде совокупности схем отношений:

R 1 11, А12, …A1n1)

R2 21, А22, …A2n2)

……………………

Rm m1, Аm2, …Amn).

3.4 Нормализация реляционных отношений

Отношения в реляционных базах данных обладают всеми свойствами множеств.

Ограничения в реляционных базах данных:

1. Основным ограничением является невозможность представления в отношениях кортежей-дубликатов. Это означает, что каждое отношение R имеет хотя бы один первичный ключ.

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

3. На значения атрибутов можно накладывать ограничения, даже в явном виде. Для этого обычно используют язык предикатов.

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

Определение. Функциональная зависимость означает: атрибут В в отношении R функционально зависит от атрибута А, если в каждый момент времени каждому значению атрибута А соответствует не более, чем одно значение атрибута В из этого же отношения. Это означает, что А однозначно определяет В:А→В.

Например,

*

*

* - возможные ключи.

Требования к рациональному размещению атрибутов в отношении.

  1. Выбранные первичные ключи должны быть минимальными.

  2. Состав отношений базы данных должен быть минимальным (на практике минимальная избыточность атрибутов).

  3. При выполнении операций, включение, удаление, модификации в базе данных не должно быть аномалий (трудностей).

  4. Перестройка набора отношений при введении новых типов данных должна быть минимальна.

  5. Разброс времени ответа на различные запросы в базе должен быть небольшим.

Пример аномалии операции модификации.

Поставки (название поставщика, адрес, товар, цена, количество и т.д.). В базе адрес поставщика повторяется для каждого товара. Если у поставщика изменился адрес, то изменения следует сделать во всех кортежах. Если это не так, то база данных противоречива.

Для выполнения этих требований необходима нормализация исходных схем отношений. Это делается с помощью композиции, декомпозиции, назначения новых ключей.

На практике введено четыре уровня нормализации отношений, а значит и четыре нормальных формы: 1НФ, 2НФ, 3НФ, 4НФ. Эти формы подчиняются правилу вложенности по возрастанию номеров. Если отношение в 4НФ, значит оно находится и в 3НФ, и во 2НФ, и в 1НФ.

1НФ

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

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

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

2НФ.

Схема отношения R находится во 2НФ, если она находится в 1НФ и каждый ее атрибут, не являясь первичным в этом отношении, полностью зависит от первичного ключа.

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

С ЛОЖНОЕ А* 2НФ А* А* Разбиваем

ОТНОШЕНИЕ В* В* D на два

С С простых

D отношения

Рассмотрим пример.

*

*

* 2НФ

*

Примечание. 1) Расщепление отношений до 2НФ может быть вызвано естественным ростом базы, поэтому на практике его рекомендуется осуществлять заранее.

2) В общем случае каждый атрибут должен полностью зависеть от всего ключа. В другом случае его рекомендуется выделять в отдельное отношение.

3) Отношение во 2НФ может допускать аномалии для выполнения операции модификации, удаления, включения.

3НФ

Схема отношения находится в 3НФ, если она находится во 2НФ и каждый непервичный атрибут не транзитивно зависит от первичного ключа. На практике переход к 3НФ означает устранение всех транзитивных зависимостей атрибутов, не являющихся основными, от первичных ключей.

Рассмотрим пример.

На рисунке раздела 3.4. атрибут «дата окончания» зависит от атрибута «номер проекта», который в свою очередь зависит от атрибута «номер служащего». Таким образом, атрибут «дата окончания проекта» транзитивно зависит от атрибута «№ служащего». Приведем это отношение к 3НФ.

*

*

*

Недостатки основной схемы.

1. До назначения конкретного служащего некуда записать дату окончания проекта.

2. Изменение даты проекта заставляет искать все записи, которые содержат дату или ее модификацию.

Примечание. 3НФ является основной при построении реляционных моделей данных. Если в отношении отсутствуют многозначные зависимости, то практически снимаются аномалии операции.

4НФ

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

Декомпозицией схемы отношения R называется замена ее совокупностью подмножеств ρ={R1…, Rn}, R={А1…, АR}, таких, что выполняется следующее соотношение:

R1U R2 U…= U Rn= R={А1…, АR}

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

Выделим основные преимущества реляционных баз данных:

1. Простота

2. Гибкость. Разрезая и склеивая отношения пользователь может получать нужные файлы в нужной для себя форме.

3. Точность. Она обеспечивается применением математических методов.

4. Секретность. При этом упрощается защита данных от несанкционированного доступа. Секретные данные можно выделить в отдельные отношения и установить проверку правила доступа к этим данным.

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

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

7. Язык манипулирования данными. На основе алгебры отношений достаточно просто строятся несложные и гибкие ЯМД.