Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

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





 

Как было отмечено в подразд. 5.3, в основе реляционной модели данных лежит их представление в виде таблиц, что в значительной степени облегчает работу проектировщика БД и — в последующем — пользователя в силу привычности и распространенности такого варианта использования информации. Данная модель была предложена Э.Ф.Коддом (E.F. Codd) в начале 70-х гг. XX в., и вместе с иерархической и сетевой моделями составляет множество так называемых великих моделей. Можно сказать, что сегодня именно эта модель используется во всех наиболее распространенных СУБД.

Определение любой модели данных требует описания трех элементов:

· определение типов (структур) данных;

· определение операций над данными;

· определение ограничений целостности.

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

Типы структур данных.Рассмотрение этого вопроса требует введения определений нескольких основных понятий.

Множество возможных значений некоторой характеристики объекта называется доменом (domain):

Например, в качестве домена можно рассматривать такие характеристики студента, как его фамилия, курс, рост и т.п.:

 

Dфамилия = {Иванов, Петров, Сидоров, …}

Dрост = {160, 161, 162, …, 190}.

 

Очевидно, что можно сопоставить понятия «атрибут» инфологической и «домен» реляционной моделей данных. Возможные значения характеристик объектов могут принимать числовые или текстовые значения, а их множества могут быть как конечными, так и бесконечными. Отметим, что в случае конечности домена можно организовать проверку явных ограничений целостности: в нашем примере домен Dpoст определяет, что все студенты должны иметь рост от 160 до 190 см, а номер курса не может превышать 5.

Вектор размерности k, включающий в себя по одному из возможных значений k доменов, называется кортежем (tuple). Для приведенного выше примера кортежами являются

 

(1, Иванов, 172);



(3, Сидоров, 181);

(5, Уткин, 184).

 

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

Декартовым произведением k доменов называется множество всех возможных значений кортежей

 

 

Пусть для того же примера определены три домена:

 

 

Тогда их декартовым произведением будет множество D, состоящее из восьми записей:

 

 

При увеличении размерности любого из доменов увеличивается и размерность их декартова произведения. Так, если в первом домене определены три элемента D1 = {1, 4, 5}, декартово произведение имеет вид

 

 

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

Наконец, важнейшее определение: отношением (relation) R, определенным на множествах доменов D1, D2, ..., Dk, называют подмножество их декартова произведения

 

 

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

Таким образом, понятие «отношение» позволяет моделировать данные и связи между ними. В силу этого можно определить реляционную базу данных (РБД) как совокупность экземпляров конечных отношений.

Если учесть, что результат обработки любого запроса к РБД также можно интерпретировать как отношение (возможно, не содержащее ни одного кортежа), то возникает возможность построения ИС, основным инструментом которой будет алгебра отношений (реляционная алгебра). Любой запрос в такой системе может быть представлен в виде формулы, состоящей из отношений, объединенных операциями реляционной алгебры. Создав СУБД, обеспечивающую выполнение этих операций, можно разрабатывать И С, в которых любой запрос потребителя программируется формулой.

Ограничения целостности.Отношение может быть представлено таблицей, обладающей определенными свойствами (которые, по сути, и определяют внутренние ограничения целостности данных) [54]:

· каждая строка таблицы — кортеж;

· порядок строк может быть любым;

· повторение строк не допускается;

· порядок столбцов в отношении фиксирован.

Понятие «отношение» весьма схоже с понятием «файл данных». Поэтому в дальнейшем будем использовать следующую терминологию: отношение — файл; кортеж — запись; домен — поле. Идентификация конкретной записи файла осуществляется по ключу (набору полей, по значению которого можно однозначно идентифицировать запись). В файле можно определить несколько ключей. Один из них, включающий минимально возможное для идентификации записи число полей, называется первичным ключом.

Применительно к понятию «файл данных» внутренние ограничения целостности формулируются следующим образом:

· количество полей и их порядок в файле должны быть фиксированными (т. е. записи файла должны иметь одинаковые длину и формат);

· каждое поле должно моделировать элемент данных (неделимую единицу данных фиксированного формата, к которому СУБД может адресоваться непосредственно);

· в файле не должно быть повторяющихся записей.

СУБД, основанные на РБД, поддерживают и явные ограничения целостности. На практике они определяются зависимостями между атрибутами (см. разд. 5.2).





Рекомендуемые страницы:

Воспользуйтесь поиском по сайту:



©2015- 2021 megalektsii.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.