Тип данных

Реляционная модель данных (РМД)

Впервые принципы реляционной модели были изложены Е.Ф. Коддом в 70-х годах. Математик по образованию он предложил использовать аппарат теории множеств и математической логики в управлением БД. Он показал, что данные могут быть организованы в виде двумерных таблиц особого вида известного в математике как отношение (relation). Над отношениями могут выполняться различные операции. Кодд предложил понятие реляционного исчисления. Реляционная модель данных некоторой предметной области представляет собой набор переменных-отношений.

В реляционной модели рассматриваются три аспекта:

1. Структурный аспект (данные должны быть представлены в виде отношений).

2. Аспект целостности данных (достоверность).

3. Аспект манипулирования данными (операции над отношениями).

В лекциях будет рассмотрена и изучена база данных «поставщики и детали», состоящая из 3-х переменных отношений (таблиц):

- S (поставщики)

- P (детали)

- SP (поставки)

S

  S# SNAME STATUS CITY  
  S1 Smith   London  
  S2 Jones   Paris  
  S3 Black   Paris  
  S4 Clark   London  
           
  P        
P# PNAME COLOR WGT CITY
P1 Nut Red   London
P2 Bolt Green   Paris
P3 Screw Blue   Paris
P4 ZZZ Red   London
                   

SP

S# P# QTY
S1 P1  
S1 P2  
S1 P3  
S2 P1  
S2 P2  
S3 P2  

Рис. БД поставщиков и деталей

Таблица S содержит, для каждого поставщика, номер поставщика, имя, код статуса и место расположения; таблица P содержит, для каждой детали, номер детали, наименование, цвет, место, где деталь хранится; таблица SP содержит, для каждой поставки, номер поставщика, номер детали и количество поставленного.

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

Каждая из трех таблиц имеет сильное сходство с обычным последовательным файлом, причем строки таблиц соответствуют записям файла, а столбцы соответствуют полям записей. Таблица Р, например, содержит четыре строки или записи, каждая из которых состоит из пяти полей. Однако есть определенные важные различия между такими таблицами, как на рисунке БД поставщиков и деталей и обычными последовательными файлами. Каждая из этих таблиц является фактически особым случаем конструкции, известной в математике как отношение – термин, который имеет намного более точное определение, чем более привычный термин обработки данных «файл» или «таблица». Реляционный подход к данным основан на осознании того, что файлы, которые удовлетворяют определенным ограничениям, могут рассматриваться как математические отношения, а потому для решения различных практических задач, имеющих дело в данными в таких файлах, может использоваться элементарная теория отношений. Поэтому в большинстве работ, посвященных реляционному подходу, таблицы, подобные представленным, рассматриваются как отношения. Строки таких таблиц обычно называют кортежами, так как этот термин определен точнее, чем «строка» или «запись». Однако, можно использовать термины «кортеж» и «строка» как равнозначные. Аналогично, столбцы обычно называют атрибутами, и опять-таки мы будем использовать оба термина как равнозначные.

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

Домен – это пул значений, из которого извлекаются фактические значения, появляющиеся в данном столбце. Например, величины, появившиеся в столбце Р# как таблицы Р, так и таблицы SP, извлечены из основного домена всех действительных (возможных) номеров деталей. Этот домен, несмотря на то, что он может не быть явно записан в базе данных как фактически существующее множество значений, в концептуальной схеме будет самостоятельно определен и будет иметь свое собственное имя. Столбцы, базирующиеся на этом домене, могут иметь, а могут и не иметь то же самое имя (очевидно, они должны иметь другое имя, если какая-нибудь неоднозначность будет приводить к различным результатам; например, если два столбца в одной и той же таблице были получены из одного домена). Заметим, что отношения S и SP имеют общий домен (номера поставщиков), отношения P и SP имеют общий домен (номера деталей), а отношения S и P – (размещения). Основным свойством реляционных структур данных является то, что связи между кортежами (строками) представлены исключительно значениями данных в столбцах, полученных из общего домена. Тот факт, что поставщик S3 и деталь Р2 размещены в одном городе. Например, представлен появлением одинаковых значений в столбце CITY (город) для двух рассматриваемых кортежей. Особенность реляционного подхода в действительности состоит в том, что вся информация в базе данных, как «объекты», так и «связи», представлена в единой, унифицированной форме, а именно в форме таблиц. Как мы увидим позднее, этим свойством не обладают иерархический и сетевой подходы.

Термины на понятийном уровне:

Отношение – это таблица

Кортежи – строки таблицы

Атрибуты – ее столбцы

Количество строк в таблицах – кардинальность таблицы или кординальное число.

Количество столбцов – степень отношения

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

Для начала покажем смысл этих понятий на примере отношения СОТРУДНИКИ, содержащего информацию о сотрудниках некоторой организации:

Понятие тип данных в реляционной модели данных полностью адекватно понятию типа данных в языках программирования. Обычно в современных реляционных БД допускается хранение символьных, числовых данных, битовых строк, специализированных числовых данных (таких как "деньги"), а также специальных "темпоральных" данных (дата, время, временной интервал). Достаточно активно развивается подход к расширению возможностей реляционных систем абстрактными типами данных (соответствующими возможностями обладают, например, системы семейства Ingres/Postgres). В нашем примере мы имеем дело с данными трех типов: строки символов, целые числа и "деньги".


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: