6179

Модели данных: нормализация отношений

Реферат

Информатика, кибернетика и программирование

Модели данных: нормализация отношений. 1НФ. Нормализация отношений Центральная задача проектирования базы данных ЭИС - определение количества отношений и их атрибутного состава. Задача группировки атрибутов в отношения допускает множеств...

Русский

2012-12-30

80.5 KB

14 чел.

Модели данных: нормализация отношений. 1НФ.

  1.   Нормализация отношений

Центральная задача проектирования базы данных ЭИС - определение количества отношений и их атрибутного состава.

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

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

• корректировка отношений не должна приводить к двусмысленности или потере информации,

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

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

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

Ограничения, типичные для реляционной модели данных - это функциональные и многозначные зависимости, а также их обобщения (обеспечивается сокращение избыточной информации в реляционной БД). Множество дополнительных ограничений может расти и, соответственно, будет увеличиваться число нормальных форм.

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

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

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

2.   Функциональные   зависимости  и   ключи

Функциональные зависимости определяются для атрибутов, находящихся в одном и том же отношении, удовлетворяющем 1НФ. Простейший случай функциональной зависимости охватывает 2 атрибута. В отношении R(A,B,...) атрибут А функционально определяет атрибут В, если в любой момент времени каждому значению А соответствует единственное значение В (обозначается А В).

Иначе говорят, что В функционально зависит от А (обозначается В = f(A)). Отсутствие функциональной зависимости обозначается А—/  В.

 

Пример 1.

I1

ФИО

ГР

Иванов

Зуев

Смирнов

Яшина

 I960

1963

1960

1961

Предположим, что в столбце ФИО представлены сведения о разных людях и значения не повторяются. Тогда можно утверждать: ФИО ГР, поскольку у каждого человека единственный год рождения. Наличие в столбце ГР повторяющихся годов (I960) означает ГР —/ ФИО.

Практически каждое ограничение для проверки функциональной зависимости можно преобразовать в утверждение о свойствах объектов предметной области.

Одновременное соблюдение двух зависимостей вида А В и В А называется взаимно-однозначным соответствием и обозначается А В.

Пример 2.

I2

Магазин

Расч

ММЗ

Динамо АТЭ

704098 122096 440162

Можно допустить, что у каждого магазина единственный номер расчетного счета и утверждать, что каждый расчетный счет принадлежит единственному магазину. Это доказывает справедливость функциональных зависимостей Магазин Расч и Расч Магазин, т.е. Магазин Расч.

Примера 3.  

I3

ФИО

Дисциплина

Петров Федин Алешин Петров

Физика Химия Физика Химия

Отношение I3 описывает экзамены, сдаваемые студентами:  ФИО —/ Дисциплина и Дисциплина —/ ФИО, т.к.  каждый студент сдает экзамены по нескольким дисциплинам, и по каждой дисциплине экзамен сдается многими студентами. Т.е. отсутствуют функциональные зависимости.

Таким образом, для атрибутов А и В некоторого отношения возможны следующие ситуации:

• отсутствие функциональной зависимости,

• наличие А В (или В А), но не обе зависимости вместе,

• наличие взаимно-однозначного соответствия А В.

Понятие функциональной зависимости распространяется на ситуацию с тремя и более атрибутами в следующей форме. Группа атрибутов (для определенности А,В,С) функционально определяет атрибут D в отношении T(A,B,C,D,....), если каждому сочетанию значений <а,b,с> соответствует единственное значение d (а - значение A, b - значение В, с - значение С, d - значение D). Наличие такой функциональной зависимости будем обозначать А,В,С D.  

Существование функциональных зависимостей связано с применяемыми способами кодирования атрибутов. Так, для множества учреждений можно утверждать, что каждый отдел (как объект предметной области) относится к единственному учреждению. Однако этого недостаточно для доказательства функциональной зависимости Отдел Учреждение. Если в каждом учреждении отделы нумеруются последовательно, начиная с 1, то функциональная зависимость неверна. Если же код отдела, кроме номера, содержит и код учреждения (или уникальность кодов обеспечивается каким-то другим способом), то функциональная зависимость Отдел Учреждение справедлива.

Зависимость ФИОГР в I1 соблюдается, если ФИО является атрибутом- идентификатором для каждого человека, что может быть справедливо только для небольших множеств людей.  

Для показателя со множеством атрибутов-признаков Р = {Р1, Р2, ... ,Рn} и атрибутом-основанием Q справедлива функциональная зависимость Р Q, но нельзя утверждать, что это единственная зависимость на указанных атрибутах.

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

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

Примера 4.  

I4

ZEN

RAM

AST

SPIM

BIG

1А

31

dwa

wii

73

ЗВ

21

bun

CUD

—*K

40

3D

30

mun

lam

58

40

31

sab

wii

40

Вероятным ключом отношения I4 является атрибут ZEN и пара атрибутов RAM, AST.

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

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

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

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

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

Каждое значение первичного ключа встречается только в одной строке отношения. Значение любого атрибута в этой строке также единственное. Если через К обозначить атрибуты первичного ключа в отношении R(A,B,C,... J), то справедливы следующие функциональные зависимости К А, К В, К С,..., К  J.

Набор атрибутов первичного ключа функционально определяет любой атрибут отношения. 

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

Пример 5.

I5

ФИО

Дисциплина

Дата

Преподаватель

Оценка

Петров Федин Алешин Петров

Физика Химия Физика Химия

10.02.11

10.02.11

14.02.11

14.02.11

Иванов

Смирнов

Иванов

Смирнов

4

5

5

5

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

ФИО, Дата Дисциплина,

ФИО, Дата Преподаватель,

ФИО, Дата Оценка.

Ясно, что

ФИО, Дата ФИО,

ФИО, Дата Дата

Следовательно, первичный ключ в отношении I5 составляют атрибуты ФИО, Дата и при поиске ключа не потребовались конкретные значения I5.

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

Теорема1

А, В А и А, В В.

Доказательство основано на том, что в строке <а,b> для атрибутов А и В значение а (как и значение b) присутствует один раз.

Теорема 2

А В и А С тогда и только тогда, когда А ВС.

Рассмотрим произвольное значение а атрибута А. Если АВ и АС, то imВ(а) и imC(a) содержат по одному элементу. Предположим, что зависимость А ВС неверна и im ВС(а) состоит из 2 или более элементов. Тогда либо im В(а), либо im С(а) должны содержать более одного элемента. Полученное противоречие доказывает зависимость А ВС.

Обратно, если А ВС, то  imВС(а)  содержит один элемент  вида <b,с> для любого а. Зафиксируем некоторое значение al. Значение b (как и значение с) встречается в сочетании с al только один раз, следовательно, справедливо А В и А С.

Теорема 3

Если АВ и ВС, то А С.

Предположим, что зависимость А С неверна и множество  imС(а)  содержит более одного элемента. Каждому значению а соответствует единственное значение b (в силу А В), поэтому  imC(b)  содержит более одного элемента. Получилось противоречие с условием В С, что и доказывает теорему.

Доказательства остальных теорем опираются на первые 3 теоремы.

Теорема 4

Если А  В, то АС В (С произвольно).

Доказательство :   АС А (теорема 1), А В (условие), следовательно, АС В по теореме 3.

Теорема 5

Если А В, то АС ВС ( С произвольно).

Доказательство:   АС В (теорема 4), АС С (теорема 1), следовательно, АС ВС по теореме 2.

Теорема 6 

Если А В и ВС  D, то AC  D.

Доказательство Из А В следует АС ВС (теорема 5).  ВС D (условие), поэтому АС D по теореме 3.

Количество теорем, которые можно доказать в таком стиле, можно расширить.

Для некоторого множества функциональных зависимостей F введем множество F~, называемое покрытием. Покрытие F~ содержит все функциональные зависимости, которые можно получить из множества F в результате применения теорем 1-6 (включая и содержимое F). Одно и то же покрытие F~ может быть получено из различных множеств функциональных зависимостей. Среди таких множеств выделим множество с минимальным числом зависимостей и назовем его минимальным покрытием (базисом) множества зависимостей F.

Иначе: минимальным покрытием называется множество функциональных зависимостей, из которого удалены все зависимости, являющиеся следствиями оставшихся зависимостей и теорем 1-6.

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

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

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


 

А также другие работы, которые могут Вас заинтересовать

79157. Сектоведение как дисциплина 25.13 KB
  Сектоведение как самостоятельная академическая дисциплина по Уставу духовных академий появилась в 1912 г. Сектоведение изучает краткую историю вероучение культ и практику религиозных движений отпадших от православной Церкви или исповедующих идеи осужденные и несогласные с ее догматическим сознанием. Задача Сектоведение имеет Задачу раскрытие православного учения сообразуясь с заблуждениями еретиков. Сектоведение изучает краткую историю вероучение культ и практику религиозных движений отпадших от православной Церкви или исповедующих идеи...
79158. Историко-филологическое определение термина секта 24.74 KB
  Историко-филологическое определение термина секта Существует два мнения о происхождении термина секта: sequor secutus sum sequī следовать за кем-либо в чем-либо; seco secui sectum secre срезать стричь отсекать разделять расщеплять. Слово секта в словарях буквально значит или учение доктрина. Первоначально термин секта никакого оценочного значения в себе не содержал и оскорбляющего значения не нес. Слово секта в классической латыни 1й век использовалось для обозначения образа мыслей образа знаний типа поведения; в...
79159. Католический подход к сектантству 11.34 KB
  Католический подход к сектантству определение секты современный понятийно терминологический аппарат представление о природе сектантства Блж. Иероним секта = ересь но в Новом Завете это направление определенной религиозной мысли или академический термин как у ап. Но в целом термин этот был не определен на Западе и он не нашел себе широко развития но когда западное христианство разделилось то слово секта в разных экклезиологиях термин получил разные понимания. Именно в этот период нами был заимствован этот термин и именно в этом...
79160. Протестантский подход к сектантству 12 KB
  Протестантский подход к сектантству (определение секты, понятийно-терминологический аппарат, представление о природе сектантства, методология противостояния) В протестантском богословии не выработано четких понятий, что есть секта, а что ей не является, т.к. у них нет четкого понимания, что есть Церковь, и где проходят ее границы.
79161. Светский подход к сектантству (М.Вебер, Э.Трѐльч, Р.Нибур) 14.66 KB
  В частности в учебном пособии для студентов МГУ Социология религий автор Гараджа приводится следующее определение и критерии сектантства и церковности. Он предложил свою концепцию в споре католиков и протестантов отказаться от классического подхода понимания религий по вероучению не видеть в сектах только побочную информацию недостойную внимания. Воззрение Трѐльча вызвали возмущение у протестантских богословов но в то же время они оказали влияние на светскую науку Трельч – пионер светской социологии религий. 1 Сектами именуют...
79162. История и идеология антикультового подхода к сектантству (понятийно-терминологический аппарат, представление о природе сектантства 29.61 KB
  Раз человека вовлекли в секту путем манипуляции его сознания то его можно депрограммировать и вывести из этого состояния. Ливтон считал что люди под влиянием физического насилия способны подвергаться перемене сознания промывание мозгов но впоследствии он переменил свое мнение и стал говорить что это происходит под влиянием психологического воздействия. методы промывания мозгов смена сознания. Сейчас депрограммирование устроено другим образом – никого не крадут а предлагают встретиться с консультантом который пытается убедить пациента...
79163. Православный подход к сектантству (понятийно-терминологический аппарат, представление о природе сектантства) 26.9 KB
  в нашем богословии появляется слово секта. Все эти движения с этого времени стали именовать сектами. Они оба сходятся в одном – слово секта было заимствовано в значении ереси.