4.1. Базовые понятия реляционных баз данных

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

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

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

                       

Наименование

Год

продолжительность

Жанр

Операция Ы

1979

86

Комедия

Бриллиантовая рука

1982

93

Комедия

Морозко

1963

76

Сказка

 

Атрибуты

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

Схема отношения, схема базы данных

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

Пример: Кинофильмы (Наименование, Год, Продолжительность, Жанр)

Атрибуты схемы отношения образуют множество, а не упорядоченный список. То есть схема отношения Кинофильмы (Продолжительность, Жанр, Наименование, Год) и схема, приведенная выше представляют собой одно и тоже отношение.

Проект базы данных выполненный в рамках реляционной модели включает одно или несколько схем отношений. Набор схем отношений называют реляционной схемой базы данных (relational database schema) или просто схемой базы данных (database schema).

Домен

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

Также полагается, что с каждым атрибутом ассоциирован определенный домен (domain), т.е. некоторый базовый тип. Значения атрибутов должны принадлежать соответствующим доменам, определяемым каждым из атрибутов отношения.

Наиболее правильной интуитивной трактовкой понятия домена является понимание домена как допустимого потенциального множества значений данного типа.

Кортеж, отношение

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

(«Бриллиантовая рука», 1982, 93, «Комедия»)

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

Формы представления отношений

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

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

Экземпляры отношения

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

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

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