Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Проверка отношений с помощью правил нормализации
Процесс проектирования представляет собой процесс нормализации схем отношений, причем каждая следующая нормальная форма обладает свойствами лучшими, чем предыдущая. Каждой нормальной форме соответствует некоторый определенный набор ограничений, и отношение находится в некоторой нормальной форме, если удовлетворяет свойственному ей набору ограничений. Примером набора ограничений является ограничение первой нормальной формы - значения всех атрибутов отношения атомарные. Поскольку требование первой нормальной формы является базовым требованием классической реляционной модели данных, мы будем считать, что исходный набор отношений уже соответствует этому требованию. В теории реляционных баз данных обычно выделяется следующая последовательность нормальных форм: · первая нормальная форма (1NF); · вторая нормальная форма (2NF); · третья нормальная форма (3NF); · нормальная форма Бойса-Кодда (BCNF); · четвертая нормальная форма (4NF); · пятая нормальная форма (5NF). Основные свойства нормальных форм: - каждая следующая нормальная форма в некотором смысле лучше предыдущей; - при переходе к следующей нормальной форме свойства предыдущих нормальных свойств сохраняются. В основе процесса проектирования лежит метод нормализации, декомпозиция отношения, находящегося в предыдущей нормальной форме, в два или более отношения, удовлетворяющих требованиям следующей нормальной формы. Наиболее важные на практике нормальные формы отношений основываются на фундаментальном в теории реляционных баз данных понятии функциональной зависимости. Функциональная зависимость В отношении R атрибут Y функционально зависит от атрибута X (X и Y могут быть составными) в том и только в том случае, если каждому значению X соответствует в точности одно значение Y: R.X (r) R.Y. Полная функциональная зависимость Функциональная зависимость RX (r) RY называется полной, если атрибут Y не зависит функционально от любого точного подмножества X. Транзитивная функциональная зависимость Функциональная зависимость RX -> RY называется транзитивной, если существует такой атрибут Z, что имеются функциональные зависимости RX -> RZ и RZ -> RY и отсутствует функциональная зависимость RZ --> RX. Не ключевой атрибут Не ключевым атрибутом называется любой атрибут отношения, не входящий в состав первичного ключа. Взаимно независимые атрибуты Два или более атрибута взаимно независимы, если ни один из этих атрибутов не является функционально зависимым от других. Отношение R находится во второй нормальной форме (2NF) в том и только в том случае, когда находится в первой нормальной форме, и каждый не ключевой атрибут полностью зависит от первичного ключа. Отношение R находится в третьей нормальной форме (3NF) в том и только в том случае, если находится во второй нормальной форме, и каждый не ключевой атрибут не транзитивно зависит от первичного ключа. Детерминант – любой атрибут, от которого полностью функционально зависит некоторый другой атрибут. Отношение R находится в нормальной форме Бойса-Кодда (BCNF) в том и только в том случае, если каждый детерминант является возможным ключом. В отношении R (A, B, C) существует многозначная зависимость RA и -> -> RB в том и только в том случае, если множество значений B, соответствующее паре значений A и C, зависит только от A и не зависит от С. Отношение R (A, B, C) можно спроецировать без потерь в отношения R1 (A, B) и R2 (A, C) в том и только в том случае, когда существует MVD A -> -> B | C. Под проецированием без потерь понимается такой способ декомпозиции отношения, при котором исходное отношение полностью и без избыточности восстанавливается путем естественного соединения полученных отношений. Отношение R находится в четвертой нормальной форме (4NF) в том и только в том случае, если в случае существования многозначной зависимости A и B все остальные атрибуты R функционально зависят от A. Отношение R (X, Y,..., Z) удовлетворяет зависимости соединения * (X, Y,..., Z) в том и только в том случае, когда R восстанавливается без потерь путем соединения своих проекций на X, Y,..., Z. Отношение R находится в пятой нормальной форме в том и только в том случае, когда любая зависимость соединения в R следует из существования некоторого возможного ключа в R. Пятая нормальная форма – это последняя нормальная форма, которую можно получить путем декомпозиции. Ее условия достаточно нетривиальны, и на практике пятую нормальную форму не используют. Заметим, что зависимость соединения является обобщением, как многозначной зависимости, так и функциональной зависимости. Отношения локальной логической модели данных отвечают требованиям НФБК.
|