Реляционная алгебра

Наименьшая единица данных реляционной модели – это отдельное атомарное (неразложимое) для данной модели значение данных. Так, в одной предметной области фамилия, имя и отчество могут рассматриваться как единое значение, а в другой – как три различных значения.

Интерпретация
Номер рейса Дни недели Пункт отправления Время вылета Пункт назначения Время прибытия Тип самолета Стоимость билета
Данные
  2_4_7 Баку 21.12 Москва 0.52 ИЛ-86 115.00
  3_6 Ереван 7.20 Киев 9.25 ТУ-154 92.00
  2_6 Казань 22.40 Баку 23.50 ТУ-134 73.50
  1 по 7 Киев 14.10 Москва 16.15 ТУ-154 57.00
  2_3_5 Минск 10.50 Сочи 13.06 ИЛ-86 78.50
  1_3_6 Москва 15.17 Баку 18.44 ИЛ-86 115.00
  1 по 7 Москва 9.05 Киев 11.05 ТУ-154 57.00
  1_3_5 Рига 21.53 Таллин 22.57 АН-24 21.50
  3_6 Сочи 18.25 Баку 20.12 ТУ-134 44.00
  2_4_6 Таллин 6.30 Рига 7.37 АН-24 21.50
                             

Рис.. К разделению данных и их интерпретации

Отношения между столбцами и строками на формальном уровне опираются на понятия «домены» Dj (столбцы) и «кортежи» Kj (строки). Отношения Rco множеством доменов {Di} называются подмножеством декартового (прямого) произведения доменов D1 х D2 х... xDn.

Таблица-отношения содержит имена граф — атрибутов (Al, A2, A3...). На пересечении строк и столбцов находятся значения атрибутов (d)- атомарное значение отношения.

Доменом называется множество атомарных значений одного и того же типа. Так, на рис домен пунктов отправления (назначения) – множество названий населенных пунктов, а домен номеров рейса – множество целых положительных чисел.

Заголовок (на рис. он назывался интерпретацией) состоит из такого фиксированного множества атрибутов A1, A2,..., An, что существует взаимно однозначное соответствие между этими атрибутами Ai и определяющими их доменами Di (i=1,2,...,n).

Тело состоит из меняющегося во времени множества кортежей, где каждый кортеж состоит в свою очередь из множества пар атрибут-значение (Ai:Vi), (i=1,2,...,n), по одной такой паре для каждого атрибута Ai в заголовке. Для любой заданной пары атрибут-значение (Ai:Vi) Vi является значением из единственного домена Di, который связан с атрибутом Ai.

Степень отношения – это число его атрибутов. Отношение степени один называют унарным, степени два – бинарным, степени три – тернарным,..., а степени n – n-арным. Степень отношения "Рейс" (рис.) – 8.

Значения атрибутов одной строки — один кортеж Kj, отношения R состоят из множества упорядоченных кортежей:

R = {Kj}J= 1 - m Kj = {dij, d2j... dnj}, где n — число доменов (отношений);

j — номер кортежа;

m — общее число кортежей в отношениях — координационное число отношений. Кардинальное число или мощность отношения – это число его кортежей. Мощность отношения "Рейс" равна 10. Кардинальное число отношения изменяется во времени в отличие от его степени.

Ключ таблицы (отношений). Кортежи не должны повторяться внутри таблицы (отношений). Они должны иметь первичный ключ (уникальный идентификатор).

Поскольку отношение – это множество, а множества по определению не содержат совпадающих элементов, то никакие два кортежа отношения не могут быть дубликатами друг друга в любой произвольно-заданный момент времени. Пусть R – отношение с атрибутами A1, A2,..., An. Говорят, что множество атрибутов K=(Ai, Aj,..., Ak) отношения R является возможным ключом R тогда и только тогда, когда удовлетворяются два независимых от времени условия:

1. Уникальность: в произвольный заданный момент времени никакие два различных кортежа R не имеют одного и того же значения для Ai, Aj,..., Ak.

2. Минимальность: ни один из атрибутов Ai, Aj,..., Ak не может быть исключен из K без нарушения уникальности.

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

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

Отношение – Таблица (иногда Файл),
Кортеж – Строка (иногда Запись),
Атрибут – Столбец, Поле.

При этом принимается, что "запись" означает "экземпляр записи", а "поле" означает "имя и тип поля".


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



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