Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

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



Нормальные формы

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

Выделяют след. последовательность НФ:

- Первая НФ (НФ1);

- Вторая НФ (НФ2);

- Третья НФ (НФ3);

- Усиленная третья НФ или НФ Байеса Кода (НФБК);

- Четвертая НФ (НФ4);

- Пятая НФ (НФ5).

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

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

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

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

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

Перевод отношений в следующую НФ осуществляется методом декомпозиции без потери при помощи операции проекции.

Декомпозиция без потерь должна обеспечить следующее:

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

- Декомпозиция осуществляется следующим образом:

Пусть отношение R(АВСDE) не приведено к НФБК и в нем существует ФЗ, С→D, устранение которой позволит перевести отношение в следующую НФ. Над отношением R выполняется декомпозиция на 2 новых отношения:

R1(A,B,C,E);

R2(С,Е).

Отношение R2 является проекцией отношения R на атрибуты C,D т.о. атрибуты, кот связаны ФЗ выделяются в отдельные отношения. Процесс нормализации отношений методом нормальных форм предполагает последовательное удаление из исходного отношения сл. зависимостей:

- частичных зависимостей неключевых атрибутов от ключа получаем НФ2;

- транзитивных зависимостей некот атрибутов от ключа получаем НФ3

- зависимостей ключей (атрибутов составных ключей от неключевых атрибутов) получаем НФБК.



Нормализацию отношения студент проводят следующим образом:

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

1) частичная ФЗ;

2) полная ФЗ;

3) транзитивная зависимость.

 

 

 


предм

 

 

 
сем

 

 

 

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

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

 

Отношение «сессия» ном, предм, сем, балл и ключ – ном, предм, сем.

 

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

 

Жилец

 
 


НОМ, ФАМ, КОМН, ТЕЛ

Т.о отношение сессия и жилец не содержат частичной функциональной зависимости и находится в НФ2.

- 3 шаг – декомпозиция с целью удаления транзитивных функциональных зависимостей.

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

 

       
 
   

линия декомпозиции

 

 

 


 

Для исключения транзитивной зависимости выполняем операцию проекция на атрибуты являющиеся причиной транзитивной зависимости

 

Житель

(НОМ, ФАМ, КОМН)

 

 

 

Номера

(КОМН, ТЕЛ)

 

 


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

Сессия

 

 

 


ном

предм

сем

балл

 

Математика

   
 

Физика

   
 

Химия

   
 

История

   
 

Математика

   
 

Физика

   
 

Химия

   
 

Иностр

   
 

Информ

   
 

Орг.химия

   
 

Проц и апп

   
 

Мат мод

   
 

Делопр

   

 

 

Житель

 

 
 

 

 


ном

фам

Комн

 

Соколов

 
 

Орлов

 
 

Чайкин

 
 

Лебедев

 
 

Чижиков

 

 

Номера

 

комн

Тел

 

2-58

 

2-15

 

2-48

 

Существует еще одна проблема в отношении сессия. Название предметов повторяются, т.к. несколько студентов сдают 1 экзамен и существует многозначная зависимость ном<<–––>>предмет

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

Если данные в базу вводят разные люди то такая ситуация возможна в этом случае требуется еще одно отношение:

Предмет

 

предм

ап

 

Код предмета

Предмет

 

Математика

 

Физика

 

Химия

 

История

 

Иностр

 

Информат

 

Философия

 

Экология

 

Обж

 

Делопр

 

Еще одно преимущество использования дополнительного отношения – экономия памяти т.к. для хранения числа код предмета требуется 2 байта, а для хранения строки в 20 символов в 20 байт.


Дата добавления: 2015-08-27; просмотров: 116 | Нарушение авторских прав




<== предыдущая лекция | следующая лекция ==>
Нормальное распределение | Вы можете усилить любое из 10 тел, определив, какое и тело находиться в дисбалансе, а затем практиковать определенную технику для усиления этого тела.

mybiblioteka.su - 2015-2024 год. (0.017 сек.)