ТОП 10:

Структура данных реляционной модели



Структура данных предполагает представление предметной области рассматриваемой задачи в виде набора взаимосвя­занных отношений. При создании информационной системы совокупность отношений позволяет хранить данные об объектах предметной области и моделировать связи между ними. В каждой связи одно отношение может выступать как основное (базовое), а другое отношение выступает в роли подчиненного (производного). Таким образом, один кортеж основного отношения может быть связан с несколькими кортежами подчиненного отношения. Для поддержки этих связей оба отношения должны содержать наборы атрибутов, по которым они связаны. В основном отношении это первичный ключ отношения, который однозначно определяет кортеж основного отношения. В подчиненном отношении для моделирования связи должен присутствовать набор атрибутов, соответствующий первичному ключу основного отношения. Однако здесь этот набор атрибутов уже является вторичным ключом или внешним ключом, т. е. он определяет множество кортежей отношения, которые связаны с единственным кор­тежем основного отношения. Множество взаимосвязанных друг с другом таблиц образуют схему базы данных.

Отношение Rпредставляет собой двумерную таблицу, содержащую некоторые данные. Математически N-арное отношение D — это множество декартова произведения множеств (доменов) D1,D2, ... Dп, ( ), не­обязательно различных:

где — полное декартово произведение, т. е. набор всевозможных сочетаний из п элементов каждое, где каждый элемент берется из своего домена.

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

l имеет уникальное имя (в пределах базы данных);

l определён на некотором простом типе данных или на другом домене;

l может иметь некоторое логическое условие, позволяющее описать подмножество данных, допустимых для этого домена;

Пример: вес, количество и т.п.

Основное значение доменов состоит в том, что они ограничивают сравнения: нельзя сравнивать значения из различ­ных доменов, даже если они имеют одинаковый тип данных.

Атрибут отношения представляет собой пару вида

<Имя_атрибута : Имя_домена> (либо <A:D>). Имена атрибутов должны быть уникальны в пределах отношения. Часто имена атрибутов отношения совпадают с именами соответствующих доменов.

Отношение R, определенное на множестве доменов, содержит две части: заголовок и тело.

Заголовок отношения— это фиксированное количество атрибутов отношения, описывающее декартово произведение до­менов, на котором заданном отношении:

(< A1 :D1>,< A2 : D2>, ... ,< An : Dn> )

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

Тело отношения содержит множество кортежей отношения. Каждый кортеж отношения представляет собой множество

Пар вида <Имя_атрибута : Значение_атрибута>

R(< А1 : Val1>,< А2: Val2 >,...,< An : Vаln>)

таких, что значение Vаliатрибута Ai, принадлежит домену Di. Тело отношения представляет собой набор кортежей, т. е. подмножество декартового произведения доменов. Таким образом, тело отношения собственно и является отношением в математическом смысле слова. Тело отношения может из­меняться во время работы с базой данных, т. к. кортежи с те­чением времени могут изменяться, добавляться и удаляться.

Отношение обычно записывается в виде:

R(< A1 :D1>,< A2 : D2>, ... ,< An : Dn> ), либо в сокращенных вариантах: R(А1,А2, •••, Аn)или R.

Число атрибутов в отношении называется степенью (либо арностью] отношения, а множество кортежей отношения — мощностью отношения.

Экземпляр отношения — это множество кортежей для данного отношения. Экземпляр может изменяться с течением времени. Обычная база данных в текущий момент времени работает только с одной версией отношения. Такой экземпляр отношения называется текущим.

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

SR=(А1,А2, •••, Аn), i=1,n.

Если атрибуты принимают значения из одного и того же домена, то они называются q-сравнимыми, где q — множе­ство допустимых операций сравнений, заданных для данно­го домена. Например, если домен содержит числовые дан­ные, то для него допустимы все операции сравнения: q = {=,<>,>=,<=,<,>}. Однако и для доменов, содержащих символьные данные, могут быть заданы не только операции сравнения по равенству и неравенству значений. Если для данного домена задано лексикографическое упорядочение, то он также имеет полное множество операций сравнения.

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

Для эквивалентных соотношений выполняются следующие условия.

l наличие одинакового количества атрибутов;

l наличие атрибутов с одинаковыми наименованиями;

l содержание данных из одних и тех же доменов для атрибутов с одинаковыми наименованиями;

l наличие в отношениях одинаковых строк с учетом того, что порядок атрибутов может различаться;

l отношения такого рода есть различные изображения одно­го и того же отношения.

Свойства отношений непосредственно следуют из приведен­ного ранее определения отношения. В этих свойствах в ос­новном и состоят различия между отношениями реляционной модели данных и простыми таблицами.

 

l Уникальность имени отношения. Имя одного отношения должно отличаться от имен других отношений.

l Уникальность кортежей. В отношении нет одинаковых кор­тежей. Действительно, тело отношения есть множество кор­тежей и, как всякое множество, не может содержать нераз­личимые элементы. Таблицы в отличие от отношений могут содержать одинаковые строки. Каждая ячейка отношения содержит только атомарное (неделимое) значение.

l Неупорядоченность кортежей. Кортежи не упорядочены (сверху вниз), т. к. тело отношения есть множество, а мно­жество не упорядочено (для сравнения — строки в табли­цах упорядочены). Одно и то же отношение может быть изображено разными таблицами, в которых строки идут в различном порядке.

l Неупорядоченность атрибутов. Атрибуты не упорядочены (слева направо).

l Уникальность имени атрибута в пределах отношения. Ка­ждый атрибут имеет уникальное имя в пределах отноше­ния, значит, порядок атрибутов не имеет значения (для сравнения — столбцы в таблице упорядочены). Это свой­ство несколько отличает отношение от математического определения отношения. Одно и то же отношение может быть изображено разными таблицами, в которых столбцы идут в различном порядке.

l Атомарность значений атрибутов. Все значения атрибутов атомарны. Это следует из того, что лежащие в их основе атрибуты имеют атомарные значения, т. е. с каждым атри­бутом связана какая-то область значений (отдельный эле­ментарный тип), значения атрибутов берутся из одного и того же домена. Схема и кортежи отношения— множест­ва, а не списки, поэтому порядок их представления не име­ет значения. Для сравнения-- в ячейки таблицы можно поместить различную информацию: массивы, структуры, другие таблицы и т. д.

 

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

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

l "Один-к-одному" - - один экземпляр первого отношения связан только с одним экземпляром второго отношения. Как правило, существование такого типа связи свидетель­ствует о том, что отношения в пределах схемы базы дан­ных заданы некорректно.

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

l "Многие-ко-многим" - многие экземпляры первого от­ношения связаны со многими экземплярами второго отношения. Связь такого вида практически не реализуется в реляционной среде. В силу этого она легко разрешается введением дополнительного (производного) отношения, которое является промежуточным между исходными от ношениями и соединено с ними двумя связями "один-ко-многим".







Последнее изменение этой страницы: 2017-01-26; Нарушение авторского права страницы

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