Организация данных в реляционных наборах данных. 


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



ЗНАЕТЕ ЛИ ВЫ?

Организация данных в реляционных наборах данных.



Пусть имеет место несколько доменов: D1, D2, …, DN, каждый домен, представляет собой некоторое конечное множество элементов: D1={d11, d12, …, d1M1}, D2={d21,d22, …, d2M2}, …, DN={dN1, dN2, …, dNMN}. Например: БД о продаваемых автомобилях — D1-цвет автомобиля, D2-марка.

Из теории множеств взято понятие: декартово произведение; оно может быть сформировано на основе этих доменов, которое представляет собой множество всех кортежей длины N, которые могут быть построены как комбинация компонентов доменов, причем в каждый кортеж должно входить N элементов по одному из каждого домена. Каждый кортеж должен содержать N элементов. Не должно быть одинаковых кортежей. В каждый кортеж должен входить только один элемент из каждого домена. Другими словами, декартово произведение есть некоторое множество кортежей, типа {d1i1, d2i1, …, dnin}, где d1i1ÎD1, d2i2ÎD2, …, dninÎDN. Формально декартово произведение записывается так: D=D1*D2*…Dn

Пример: D1={A,2}; D2={4,5,6}; D=D1*D2={A4, A5, A6, 24, 25, 26}.

Отношения представляет собой ''подмножество'' декартового произведения доменов.

Определение: Отношение R, построенное на D1, D2, …,DN, это подмножество декартового произведения D=D1*D2*…Dn.

Пусть: D1={A,2}; D2={B,C}; D3={4,5,6}; D=D1*D2*D3={AB4, AB5, AB6, AC4, AC5, AC6, 2B4, 2B5, 2B6, 2C4, 2C5, 2C6}. Þ может быть R1={AB4}; R1ÎD1*D2*D3; или R2={AB4, 2B4}; R2ÎD; Þ RmaxÎD Þ Rmaxº D.

Определение: арность отношения — количество элементов в каждом кортеже.

Определение: количество кортежей в отношении — мощность.

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

 
 

Таблица представляет N-арное отношение и имеет свойства:

1.) Каждая строка представляет собой кортеж из номеров значений принадлежащих номеру столбца;

2.) Порядок столбцов – фиксирован;

3.) Порядок строк – не имеет значения;

4.) Любые две строки различаются хотя бы одним элементом;

5.) Строки и столбцы могут обрабатываться в любой последовательности.

 

Отношение используется в БД двояко: для представления данных об объектах или сущностях, в виде набора однотипных объектов или сущностей; для представления или отображения связи между наборами объектов или сущностей. Каждое отношение характеризуется своей схемой, которая представляет собой набор атрибутов и записывается: RÞR(A1, A2, …, An).

 

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

 
 

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

 

1-ая нормальная форма имеет место, если все его атрибуты простые или атомарные.

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

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

Пример:

R1            
Табельный номер Фам Оклад Комната Телефон Дети
Имя Возраст
  Иванов 450 р.     Женя Оля  
  Темкин 470 р.     Саша  
  Кошкин 240 р.     Олег Женя  

 

Последний атрибут в данном исходном отношении является сложным и для перехода в 1 н.ф. это отношение должно быть преобразовано. Осуществляем разделение сложного атрибута на два простых и получае5м отношение R2/

 

 

R2            
Табельный номер Имя Возраст Фам Оклад Комната Телефон
  Женя   Иванов 450 р.    
  Оля   Иванова 450 р.    
  Саша   Темкин 470 р.    
  Олег   Кошкин 240 р.    
  Женя   Кошкин 240 р.    

 

Отношение, представленное в первой нормальной форме, имеет некоторые свойства, которые являются нежелательными или недопустимыми при формировании СУБД.

2-ая нормальная форма. Рассмотрим понятие функциональной зависимости.

Атрибут Y функционально зависит от атрибута X(X ® Y), если в любой момент времени каждому значению X соответствует не более чем одно значение атрибута Y.

Например: Табельный номер «Фам.

Табельный номер функционально зависит от фамилии, и фамилия также зависит от табельного номера. Фам. ® Комната.

Номер комнаты функционально зависит от фамилии, но не наоборот Т.е. Фам. Комната.

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

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

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

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

1). Имеет место дублирование информации;

2). Возникает проблема, как быть с сотрудниками у которых нет детей;

3). При изменении, например, оклада необходимо корректировать несколько записей или строк.

Атрибуты ФАМ, ОКЛАД, КОМНАТА, ТЕЛЕФОН, не находятся в полной функциональной зависимости от ключа. И следовательно отношение R2 должно быть преобразовано из первой нормальной формы во вторую нормальную форму.

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

Для перехода в 2 н.ф. необходимо из отношения R2 построить две проекции.

-Выделить из R2 в новое отношение R3 ту часть отношения R2, которая содержит составной ключ и неключевые атрибуты, зависящие функционально полно от ключа.

-Выделить из R2 в новое отношение R4 ту часть составного ключа и те неключевые, атрибуты, которые функционально зависят от этой части составного ключа (табельный номер).

В данном примере из R2 получаем R3 и R4.

R3    
Табельный номер Имя ребенка Возраст
  Женя  
  Оля  
  Саша  
  Олег  
  Женя  

 

R4        
Табельный номер Фам Оклад Комната Телефон
  Иванов 450 р.    
  Темкин 470 р.    
  Кошкин 240 р.    

 

3-ая нормальная форма (транзитивная).

Пусть имеются атрибуты X,Y,Z некоторого отношения. Пусть X ® Y, а Y ® Z. То есть имеет место: X ® Y ® Z. Z транзитивно зависит от Х, если имеют место прямые функциональные зависимости X ® Y, Y ® Z, но нет хотя бы одной обратной функциональной зависимости.

Пример транзитивной зависимости:

X Y Z

Табельный номерà Номер комнатыà Телефон

Табельный номер Номер комнатыà Телефон

То есть нет обратной фунуциональной зависимости поскольку каждому значению “Номер комнаты” может соответсвовать несколько “Табельных номеров”.

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

1). Номер телефона является характеристикой комнаты. Поэтому сведения о телефоне будут многократно дублироваться для всех сотрудников, рабочие места которых расположены в одной комнате (например, в комнате 12).

2). При изменении номера телефона необходимо корректировать не одну, а большее число строк или кортежей.

Поэтому рекомендуется перейти к 3 н.ф.

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

В данном примере, для преобразования отношения R3 в 3 н.ф. необходимо построить несколько проекций (R5 и R6).

 

R5      
Табельный номер Фам Оклад Комната
  Иванов 450 р.  
  Темкин 470 р.  
  Кошкин 240 р.  

R6 - списки всех комнат и данные о номерах телефонов, находящихся в комнатах.

Комната Телефон
   
   

Результирующими являются отношения R3, R5, R6. Нормализация отношений дает возможность:

- устранить частичные зависимости неключевых атрибутов от ключа;

- устранить транзитивные зависимости неключевых атрибутов от ключа;

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



Поделиться:


Последнее изменение этой страницы: 2017-02-05; просмотров: 298; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

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