Нормализация и ее необходимость 


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



ЗНАЕТЕ ЛИ ВЫ?

Нормализация и ее необходимость



При проектировании структуры базы данных заказчик часто предоставляет раз­работчику описание форм и бланков, существующих в бумажном виде. Поэто­му, прежде чем приступать к проектированию таблиц для БД, необходимо вы­яснить цели проектирования. К ним относятся:

О возможность хранить все необходимые данные в БД;

О исключение избыточности данных;

О необходимость свести количество хранимых таблиц к.минимуму.

При простом переносе полей бумажных форм в таблицы базы данных неиз­бежно возникнет ряд проблем — даже для простых двумерных структур прихо­дится изменять состав полей

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

Нормализация таблиц — это формальный аппарат ограничений на формиро­вание таблиц, описывающий разбиение таблиц на две или более частей и обес­печивающий применение лучших методов добавления, изменения и удаления данных; или еще проще — процесс представления данных в виде простых дву­мерных таблиц, который позволяет устранить дублирование этих данных и обес­печивает непротиворечивость хранимых в базе данных. Таким образом, окончательной целью нормализации является получение такого проекта базы данных, в котором любая часть информации хранится лишь в одном месте, то есть исключается избыточность информации. Это делается не столько с целью экономии места (в некоторых случаях нормализованные таблицы занимают боль­ше места, чем ненормализованные), сколько для исключения возможности проти­воречий в хранимых данных. Если исходить из структуры данных, то нормализацией называется процесс превращения сетевой или иерархической структуры данных в реляционную.

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

Таблица считается нормализованной на определенном уровне, когда она удов­летворяет условиям, накладываемым соответствующей формой нормализации. Процесс нормализации представляет собой последовательное изменение струк­туры таблиц до тех пор, пока она не будет удовлетворять требованиям после­дней формы нормализации. Существуют следующие шесть форм нормализации: О первая нормальная форма (First Normal Form, INF);

О вторая нормальная форма (Second Normal Form, 2NF);

О третья нормальная форма (Third Normal Form, 3NF);

О нормальная форма Бойса - Кодда (Brice - Codd Normal Form, BCNF);

О четвертая нормальная форма (fourth Normal Form, 4NF);

О пятая нормальная форма, или нормальная форма проекции-соединения (Fifth Normal Form, 5NF или PJ/NF).

При описании нормальных форм используется несколько понятий.

О Функциональной зависимостью между полями A и В называется зависимость, при которой каждому значению А в любой момент времени соответствует единственное значение В из всех возможных. Примером функциональной за­висимости может служить связь реки и моря, так как одна река впадает в единственное море и с течением времени эта связь не меняется.

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

О Многозначная функциональная зависимость. Поле А однозначно определяет поле В, если для каждого значения поля А существует хорошо определенное множество соответствующих значений поля В. Например, если рассматривать таблицу предметов и оценок учеников в школе, то поле с оценкой имеет хо­рошо определенное множество допустимых значений (1, 2, 3, 4, 5). Кроме того, количество предметов в школе также ограничено.

О Транзитивная функциональная зависимость между полями А и С наблюдает­ся в том случае, если поле В функционально зависит от поля А и поле С функ­ционально зависит от поля В. В то же время не существует функциональной зависимости поля А от поля В.

О Несколько полей взаимно независимы, если ни одно из них не является функ­ционально зависимым от другого поля.

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

Первая нормальная форма

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

Вторая нормальная форма

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

Итак, таблица, находящаяся во второй нормальной форме, должна удовле­творять следующим правилам:

О таблица должна содержать данные об одном типе объектов;

О каждая таблица должна содержать одно поле или несколько полей, образую­щих уникальный идентификатор (или первичный ключ) для каждой строки;

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

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

Третья нормальная форма

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

Требование третьей нормальной формы сводится к тому, чтобы все нёключевые поля зависели только от первичного ключа и не зависели друг от друга. Другими словами, нужно иметь возможность изменять значение любого неключевого поля, не изменяя значения любого другого поля базы данных. Это требо­вание исключает любое поле, значения в котором получаются как результат вычислений, использующих значения других полей.

 

Лекция 6. Распределенные базы данных

 

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

При этом должны обеспечиваться:

· простота использования системы;

· возможности автономного функционирования при нарушениях связности сети или при административных потребностях;

· высокая степень эффективности.

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

Заметим, что более успешно практически решается промежуточная задача - интеграция неоднородных SQL-ориентированных систем. Понятно, что этому в большой степени способствует стандартизация языка SQL и общее следование производителей СУБД принципам открытых систем.

Мы ограничимся рассмотрением проблем однородных распределенных СУБД на примере System R*.



Поделиться:


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

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