Последовательность проектирования БД при использовании ER- метода 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Последовательность проектирования БД при использовании ER- метода



1. Определение используемых сущностей и связей между ними.

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

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

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

5. Подготовка списка всех представлявших интерес атрибутов (тех из них, которые не были уже перечислены в диаграмме ER- типа в качестве ключей сущности) и назначения каждого из этих атрибутов одному из предварительных отношений.

6. Определение для каждого отношения межатрибутных ФЗ, с помощью которых проверяется соответствие отношений НФБК.

7. Отношения не находящиеся в НФБК подвергаются декомпозиции с последующей проверкой их на нахождение в НФБК.

8. П.7 повторяется до тех пор пока все отношения не будут находится в НФБК.

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

Проверка отношений на завершающейся фазе проектирования

После завершения разработки НФБК-отношений, рассматриваемых уже в качестве окончательного проекта, полученный набор необходимо проконтролировать на предмет наличия не выявленных проблем.

1. Составляются списки ФЗ для каждого отношения. Одна и та же ФЗ не должна появляться более чем в одном отношении. Если таковые имеются, то их необходимо удалить.

2. Осуществляется проверка на присутствие избыточных отношений. Отношение является избыточным, если а) - все атрибуты в избыточном отношении могут быть найдены в другом отношении проектного набора; б) - все атрибуты в избыточном отношении могут быть найдены в отношении, которое может быть получено из других отношений предложенного проектного набора с помощью серии операций СОЕДИНЕНИЕ над этими отношениями. Если устанавливается избыточность отношения, его следует исключить из проектного набора.

Для примера, иллюстрирующего первый тип избыточности, полагаем, что набор проектных отношений имеет вид:

R1(A,B)

R2(B,C,Y,Z)

R3(A,B,K)

Отношение R1 является избыточным, т.к. все его атрибуты присутствуют в отношении R3.

Для иллюстрации избыточности второго типа положим, что предлагаемый проектный набор имеет вид:

R1(A,C,X)

R3(D,K,F)

R5(D,E,G,H)

R7(A,B,D)

R8(A,B,E,G)

Отношение R8 является избыточным, т.к. применение операции СОЕДИНЕНИЕ к R5 и R7 (общим атрибутом является D) даст отношение R9(A,B,E,D,G,H), которое содержит все атрибуты, присутствующие в R8.

3. Рассмотрение отношений с практической точки зрения. Изучается характер использования отношений в конструируемой БД и определяется будут ли они поддерживать те типы запросов и операции обновления, которые предполагается использовать

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

 

Другие нормальные формы

Существует 6 нормальных форм, в которых может находится отношение: первая (1НФ), вторая (2НФ), третья (3НФ), НФБК, четвертая (4НФ) и пятая (5НФ). О первой нормальной и НФБК мы уже говорили. Следует отметить, что если отношение находится в N - форме, то оно находится во всех формах до N-1.

Таким образом, если отношение находится в НФБК, то оно находится и в 1НФ и во 2НФ и в НФБК. Однако для полноты картины рассмотрим 2НФ и 3НФ.

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

Рассмотрим отношение, моделирующее сдачу текущей сессии студентами, живущими в общежитии.

R(Сном, Сфам, Кном, Тном, Дисциплина, Оценка).

Здесь первичным ключом являются атрибуты <Сном, Дисциплина>, а атрибуты Сфам, Кном и Тном зависят только от части первичного ключа Сном, т.е. в данном случае в отношении имеется неполная ФЗ. Для приведения данного отношения ко второй нормальной форме необходимо разбить его на два отношения: R1(Сном, Сфам, Кном, Тном) и R2(Сном, Дисциплина, Оценка).

В исходном отношении R присутствуют те аномалии, о которых мы говорили ранее. В полученном наборе отношений аномалии вставки и удаления отсутствуют, но присутствует аномалия обновления.

Отношение находится в третьей нормальной форме тогда, когда оно находится во второй нормальной форме и не содержит транзитивных зависимостей.

Рассмотрим полученное в предыдущем примере отношение R1(Сном, Сфам, Кном, Тном). Это отношение находится во второй нормальной форме, однако в нем имеется транзитивная зависимость Сном -> Тном.

Для приведения этого отношения к третьей нормальной форме необходимо его разбить на два отношения R3(Сном, Сфам, Кном) и R4(Сном, Тном). При таком представлении отношений аномалия обновления не исчезла.

Рассмотрим 4НФ и 5НФ.

Ранее рассматривались случаи ФЗ, когда каждому значению детерминанта соответствовало только одно значение зависимого от него атрибута. Однако на практике можно встретить случаи, когда одному значению некоторого атрибута соответствует устойчиво постоянное множество значений другого атрибута.

Рассмотрим конкретную ситуацию. Пусть дано отношение, которое моделирует предстоящую сдачу экзаменов в сессии. Допустим оно имеет вид: R(Группа, Сном, Дисциплина).

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

R

Группа Сном Дисциплина
    БД
    АПП
    БД
    АПП
    БД
    АПП
….
    БД
    АПП

В данном отношении существуют две многозначные зависимости: Группа ->> Сном и Группа ->> Дисциплина.

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

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

В общем случае в отношении R(А, В, С) существует многозначная зависимость А ->> В в том случае, когда существует многозначная зависимость А ->>С.

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

Отношение R(А, В, С) можно спроецировать без потерь в отношение R1(А, В) и R2(А, С) в том случае, когда существует многозначная зависимость А ->> В|C (что равнозначно наличию двух зависимостей А ->> В и А ->>С).

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

Отношение R находится в четвертой нормальной форме в том случае, если в случае существования многозначной зависимости А ->> В все остальные атрибуты R функционально зависят от А.

В рассмотренном примере можно произвести декомпозицию исходного отношения в два отношения: R1(Группа, Сном) и R2(Группа, Дисциплина)

R1 R2

Группа Сном   Группа Дисциплина
      БД
      АПП
      БД
      АПП

Оба эти отношения находятся в 4НФ и свободны от отмеченных аномалий. Операции модификации теперь упрощаются: добавление нового студента связано с добавлением всего одного кортежа в отношение R1, а добавление новой дисциплины выливается в добавление по одному кортежу для каждой группы специальности в отношение R2. Кроме того, в отношении R2 можно хранить любое количество групп с определенным перечнем дисциплин, в которые пока еще не зачислены студенты. Наконец, если нужно изменить название дисциплины или удалить определенную дисциплину, то это нужно сделать несколько раз по числу групп специальности, в отличии от исходного случая, когда это нужно было делать по каждому студенту.

Последней нормальной формой является пятая нормальная форма, которая связана с анализом нового вида зависимостей, зависимостей «проекция соединения» (project – join зависимости, обозначаемые как PJ – зависимости).

5НФ редко используется на практике. В большой степени она является теоретическим исследованием. Очень тяжело определить само наличие зависимостей «проекция соединения», потому что утверждение о наличии такой зависимости делается для всех возможных состояний БД, а не только для текущего экземпляра отношения R. Однако знание о возможном наличии подобных зависимостей, даже теоретически, необходимо.

1.8. Контрольные вопросы

1.8.1. Приведите определения понятий: база данных, система управления базой данных, данные, информация, модель данных, функциональные зависимости (ФЗ), избыточная ФЗ, минимальное покрытие, сущность, связь, степень связи, класс принадлежности.

1.8.2. Какие модели используются для представления данных?

1.8.3. Перечислите признаки, по которым классифицируются базы данных.

1.8.4. Приведите алгоритм декомпозиционного проектирования базы данных.

1.8.5. В чем суть аномалий вставки, обновления и удаления при использовании универсального отношения?

1.8.6. Какие приемы используются для удаления избыточных ФЗ?.

1.8.7. В каких случаях при декомпозиции отношений происходит потеря ФЗ?

1.8.8. Назовите правила перехода от диаграммы ER – типа к набору отношений при различных степенях связи и классах принадлежности сущностей.

1.8.9. Каков алгоритм проектирования базы данных при использовании ER – метода?

1.8.10. Какие проверки необходимо осуществить на завершающей фазе проектирования базы данных?

1.8.11. Какие отношения находятся во второй, третьей и четвертой нормальной формах?



Поделиться:


Последнее изменение этой страницы: 2016-09-13; просмотров: 400; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.119.126.80 (0.01 с.)