1. Реляционная модель данных Определение реляционной модели



Скачать 63.15 Kb.
Дата11.07.2014
Размер63.15 Kb.
ТипДокументы



1.Реляционная модель данных

1.1.Определение реляционной модели


В реляционной модели данные представлены в виде набора отношений (relation). Отношение r = {(d1,...,dn), d1 D1,...,dn Dn} есть множество кортежей (d1,...,dn) , значения которых принадлежат доменам D1,...,Dn . Таким образом, отношение есть подмножество декартова произведения доменов

r D1 ... Dn .

Число n называют степенью отношения. Количество кортежей в отношении r называют мощностью отношения r.

При описании доступа к БД используют понятие таблицы (аналог отношения), состоящей из строк - записей (аналог кортежа) одного типа. Колонки таблицы делят запись на поля (компоненты набора). Для указания поля используют уникальные в рамках одной таблицы имена полей. Термин «поле» используется в разных смыслах. Во первых, тип определяет множество возможных значений соответствующей компоненты записи, аналогичным понятием в теории реляционных баз данных является домен. Во-вторых, «поле» используется в программах для описания доступа к соответствующей компоненте записи, аналогичным понятием в теории реляционных баз данных является атрибут. Атрибут Ai - это функция, вычисляющая значение i-ой компоненты кортежа отношения r. Множеством значений атрибута Ai является домен Di. В алгоритмических языках атрибут обозначается чаще именем и реже номером атрибута в кортеже.

Схемой r( R ) отношения r называют набор атрибутов R = {A1,...,An}. Реляционная модель данных или схема БД - это множество схем отношений и атрибутов, дополненная различными ограничениями и правилами (бизнес - правилами).

Введем обозначения


  • t[Ai] - значение атрибута Ai в кортеже t r отношения r;

  • t[X] = (t[A], t[B], ...
    ) - X - значение кортежа t, на множестве атрибутов X = {A, B, ...} ;

Важное значение в теории реляционных БД имеет ключ, позволяющий выделять ровно один кортеж из отношения. Ключом K отношения r(R ) называют множество атрибутов K={B1,...,Bm} R такое, что в отношении r не существует двух кортежей с одинаковым K - значением ключа и ни одно собственное подмножество ключа K не обладает этим свойством.

1.2.Операции над отношениями. Реляционная алгебра


Над отношениями с одинаковыми схемами можно выполнять теоретико-множественные операции

1. Объединение



r s = { t : (tr) (ts)}.

2. Пересечение



r s = { t : (tr) (ts)}.

3. Разность



r \ s = { t : (tr) (ts)}.

Для определения операции дополнения необходимо дополнительно определить универсальное множество. Один из вариантов - использовать для этого декартово произведение всех доменов.



  1. Дополнение

r = { t : (tD1D2...Dn) (tr)} = D1D2...Dn\r.

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

5. Активное дополнение. Вместо декартова произведения доменов в этой операции используют декартово произведение множеств используемых значений Di = {t[Ai]: tr}.

Кроме перечисленных вводят специфические операции для манипулирования отношениями.



  1. Выбор

(r) = { t : ( t ) }

  1. Проекция

X ( r ) = r [X] вычеркиваются столбцы и повторяющиеся строки

  1. Естественное соединение

q ( R  S ) = r ( R )  s ( S )
= { t : ( tr  r : ( ts  s: ( tr = t [R] )  ( ts = t [S] )



r

A

B

a1

b1

a1

b2

a2

b3

a3

b4


s

A

C

a1

c1

a1

c2

a3

c3

a3

c4


q

A

B

C

a1

b1

c1

a1

b2

c1

a1

b1

c2

a1

b2

c2

a3

b4

c2

a3

b4

c3

Отношение q ( R S) разложимо без потерь на отношения r ( R ) и s ( S ) если



q = R ( q )  S ( q )

9. - соединение Пусть R S=



q ( R  S ) = r ( R ) AB s ( S ) , AR, BS
= { t : ( tr  r : ( ts  s: ( tr = t [R] ) 
( ts = t [S] )  ( tr [R]  ts[S] )))

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

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

1.3.Реляционное исчисление


Реляционное исчисление есть множество формул вида

{ t ( R ) : (t) },

где t - переменная-кортеж со схемой R, (t) формула над атрибутами и кортежами отношений и константами, построенная при помощи скобок, операций сравнения, логических операций, кванторов общности и существования.

Для того, чтобы алгоритм вычисления отношения по формуле был конечным, множество формул ограничивают безопасными выражениями.

Например, формула { t : t r } является опасной.

Для ссылки на сущности или связи используются так называемые ключи. Ключ - это набор полей, однозначно выделяющий сущность или связь в классе. Для поставщиков таким ключом может быть наименование, адрес, пара: банк, расчетный счет. (Приведите пример ключа для поставки.) По соображениям экономии для указания сущности или связи выделяют наиболее короткий из ключей. Ключ, выделенный для указания сущности или связи называется первичным ключом. Если нет подходящего кандидата на первичный ключ (как в случае с поставщиками - все ключи очень длинные), то вводят некоторое поле, которое называют кодом. В самом простом случае кодом может быть просто порядковый номер, присваиваемый сущности в базе данных.

Для реляционных БД разработаны специальные языки запросов. Среди них наиболее распространенными являются: Query By Example (QBE) - запросы по образцу, Structured Query Language (SQL) - структурированный язык запросов. Большинство современных СУБД являются реляционными. Недостатком реляционных БД можно считать дублирование ключевых значений, когда они используются для ссылок. При неправильном выборе ключей это приводит к неоправданно большим затратам памяти. Однако, применяя в качестве ссылок коды, всегда можно свести эти затраты к минимуму.




Похожие:

1. Реляционная модель данных Определение реляционной модели iconРеляционная алгебра
Лекция Реляционная алгебра и реляционное исчисление. Нормализация данных в реляционной модели. Постреляционная модель данных
1. Реляционная модель данных Определение реляционной модели iconБазы данных Реляционная модель данных. Объекты данных, целостность реляционных данных
Реляционная модель данных была предложена Е. Коддом, в 1970 году. Реляционная модель(РМ) данных представляет информацию в виде совокупности...
1. Реляционная модель данных Определение реляционной модели iconЛекция №07 Модели данных
Описание: Иерархическая модель данных. Режимы исключения. Сетевая модель данных. Объектно-ориентированная модель данных. Объектно-реляционная...
1. Реляционная модель данных Определение реляционной модели iconРеляционная модель данных Основные определения
Кроме того, развитие формального аппарата представления и манипулирования данными в рамках реляционной модели сделали се наиболее...
1. Реляционная модель данных Определение реляционной модели iconРеляционная модель данных
Реляционная модель данных для больших совместно используемых банков данных. В настоящее время публикацию этой статьи принято считать...
1. Реляционная модель данных Определение реляционной модели iconРазработка реляционной структуры данных. Реляционная база данных
Реляционная база данных – это совокупность двумерных таблиц, содержащих всю информацию, которая должна храниться в бд
1. Реляционная модель данных Определение реляционной модели iconТипы моделей данных
Иерархическая и сетевая модели данных стали применяться в системах управления базами данных в начале 60-х годов. В начале 70-х годов...
1. Реляционная модель данных Определение реляционной модели iconВопросы для госэкзамена по курсу "Базы данных и знаний"
Реляционная модель данных. Основные понятия: отношение, кортеж, домен. Реляционная алгебра (РА)
1. Реляционная модель данных Определение реляционной модели iconГенералова бд
Трехуровневая система организации бд. Модели данных. Классификация моделей данных. Семантические модели данных. Модель полуструктурированных...
1. Реляционная модель данных Определение реляционной модели iconСвязывание модели процессов и модели данных
К сожалению, процесс преобразования модели bpwin в модель данных плохо формализуется и поэтому не автоматизирован. Модель данных,...
Разместите кнопку на своём сайте:
ru.convdocs.org


База данных защищена авторским правом ©ru.convdocs.org 2016
обратиться к администрации
ru.convdocs.org