
Реляционная алгебра.ppt
- Количество слайдов: 40
Реляционная алгебра к. т. н, доцент Глотова Т. В.
Определение • Пусть даны n множеств Dl, D 2, D 3, . . . , Dn, тогда отношение R есть множество упорядоченных кортежей d 1, d 2, …, dn, где dk€Dk, dk — атрибут, a Dk — домен отношения R, т. е отношение – это подмножество декартова произведения множеств Dl, D 2, D 3, . . . , Dn.
Свойства отношений • Отсутствуют одинаковые строки • Порядок следования строк несущественен • Порядок следования столбцов несущественен, т. к. столбцы имеют уникальные имена • Все отношения должны быть нормализованы (отношения не могут быть элементами отношений)
Операции реляционной модели • Оригинальность подхода Кодда состоит в том, что он предложил применять к отношениям (таблицам) систему операций, позволяющую получать (выводить, вычислять подобно арифметическим операциям) одни отношения из других. Это дает возможность делить информацию на хранимую и вычисляемую части и экономить память. Операции над отношениями выполняются методами реляционного исчисления и реляционной алгебры.
Реляционная алгебра • В реляционной алгебре в качестве операндов выступают отношения • Операции реляционной алгебры могут выполняться над одним отношением (например, проекция) или над двумя отношениями (например, объединение). В первом случае операция называется унарной, а во втором — бинарной.
Операции реляционной алгебры • Основными операциями над отношениями являются : – традиционные операции над множествами, такие как объединение, пересечение, разность (вычитание), декартово произведение; – специальные реляционные операции проекции, деление, соединения и выбора (селекции, ограничения).
• Степенью отношения называется число входящих в него атрибутов. • Мощностью (кардинальным числом) отношения называется число кортежей отношения. • При выполнении некоторых операций отношения должны быть совместимыми (иметь совместимые схемы), т. е. иметь одинаковую степень и одинаковые типы соответствующих атрибутов.
ОБЪЕДИНЕНИЕ • ОБЪЕДИНЕНИЕ отношений R и S представляет собой множество кортежей, которые принадлежат R или S, либо им обоим. Операция объединения выполняется над двумя совместимыми отношениями. RUS
ПЕРЕСЕЧЕНИЕ отношений R и S R S • представляет собой множество кортежей, которые принадлежат и R и S, т. е. результат пересечения R и S содержит только те кортежи первого отношения R, которое есть во втором S. Операция выполняется над двумя совместимыми отношениями.
РАЗНОСТЬ отношений R и S R-S • представляет собой множество кортежей, которые принадлежат R и не принадлежат S, т. е. результат вычитания включает только те кортежи первого отношения R, которых нет во втором S. Операция выполняется над двумя совместимыми отношениями.
ДЕКАРТОВО ПРОИЗВЕДЕНИЕ R x T • Здесь операндыотношения R и T могут иметь разные схемы. Степень результирующего отношения (R x T) равна сумме степеней отношений операндов (R и T), а мощность — произведение их мощностей.
ДЕКАРТОВО ПРОИЗВЕДЕНИЕ Rx. T • Пусть R и S отношения степени k 1 и k 2 соответственно, тогда декартовым произведением RXS отношений R и S называется множество кортежей длины k 1+k 2, первые k 1 компонентов которых образуют кортежи принадлежащие R, а последние k 2 – кортежи, принадлежащие S.
ДЕЛЕНИЕ (R / T) • Операция в некотором смысле обратна операции "декартово произведение". • Отношение "делимое" (R) должно содержать подмножество атрибутов отношения "делитель" (T). • Результирующее отношение содержит только те атрибуты делимого, которых нет в делителе. В него включают только те кортежи, декартово произведение которых с делителем содержатся в делимом.
ДЕЛЕНИЕ (R / T) • Пусть R и S отношения степени r и s соответственно, где r>s и s ≠ 0, тогда результатом деления R ÷S отношений R и S называется множество кортежей t длины r-s, таких что для всех кортежей u длины s принадлежащие S кортеж tu принадлежит R.
ПРОЕКЦИЯ • Эта операция в отличие от всех предыдущих является унарной, т. е. выполняется над одним отношением (R). Суть операции заключается в том, берется отношение R , удаляются некоторые из его атрибутов, и переупорядочиваются оставшиеся, исключаются повторяющиеся кортежи. Результирующее отношение П (R) включает часть атрибутов исходного, на которые выполняется проекция.
ВЫБОРКА • Операция выполняется над одним отношением (R). Результирующее отношение σB=b(R) содержит подмножества кортежей, выбранных по некоторому условию (B = b).
ТЕТА-СОЕДИНЕНИЕ RΘS • Θ-соединение позволяет строить новое отношение посредством конкатенации кортежей двух исходных отношений, которая производится лишь при выполнении заданного логического условия. Операция может быть представлена в виде последовательности операций декартова произведения и выборки
ЕСТЕСТВЕННОЕ СОЕДИНЕНИЕ • Операция существует для двух отношений R 1(A 1, …, An, X) и R 2(X, B 1, …Bm) , имеющих общий набор атрибутов. Результатом будет такое отношение R 3 (A 1, …, An, X, B 1, …Bm), что любой кортеж конкатенации кортежей R 1 и R 2, у которых значения атрибутов X совпадают.
ЕСТЕСТВЕННОЕ СОЕДИНЕНИЕ • Операция выполняется как следующая последовательность действий: – Вычислить декартово призведение отношений R 1 и R 2 – Для каждого атрибута X выбираем все кортежи с совпадающими значениями – Исключить повторяющиеся атрибуты R 2. X
• По справедливому замечанию Дейта, реляционная алгебра Кодда обладает несколькими недостатками. Во-первых, восемь перечисленных операций по охвату своих функций, с одной стороны, избыточны, так как минимально необходимый набор составляют пять операций: объединение, вычитание, произведение, проекция и выборка. Три другие операции (пересечение, соединение и деление) можно определить через пять минимально необходимых. Так, например, соединение — это проекция выборки произведения.
• Во-вторых, этих восьми операций недостаточно для построения реальной СУБД на принципах реляционной алгебры. Требуются расширения, включающие операции: переименования атрибутов, образования новых вычисляемых атрибутов, вычисления итоговых функций, построения сложных алгебраических выражений, присвоения, сравнения и т. д.
Нормализация • Нормализация — это формализованная процедура, в процессе выполнения которой атрибуты данных (поля) группируются в таблицы, а таблицы — в базы данных. • Нормализация . представляет собой разбиение отношения на два или более (декомпозиция) в соответствии со специальной процедурой разбиения. • Теория нормализации основана на том, что определенный набор отношений обладает лучшими свойствами при включении модификации и удалении данных, чем все остальные наборы отношений, с помощью которых моuут быть представлены те же данные.
Цели нормализации: • исключить дублирование данных; • обеспечить целостность данных таким образом, чтобы при изменении одних объектов, автоматически происходило соответствующее изменение связанных с ним объектов; • уменьшить влияние структурных измененнй БД на работу приложений, обеспечивающих пользователю доступ к данным:
• Процесс проектирования БД с использованием метода нормальных форм является итерационным и заключается в последовательном переводе отношений из первой нормальной формы в нормальные формы более высокого порядка по определенным правилам. • Каждая следующая нормальная форма ограничивает определенный тип функциональных зависимостей, устраняет соответствующие аномалии при выполнении операций над отношениями БД и сохраняет свойства предшествующих нормальных форм.
Последовательность нормальных форм: • • первая нормальная форма (1 НФ); вторая нормальная форма (2 НФ); третья нормальная форма (ЗНФ). усиленная третья нормальная форма, или нормальная форма Бойса-Кодда (БКНФ); • четвертая нормальная форма (4 НФ); • пятая нормальная форма (5 НФ).
• Перевод отношения в следующую нормальную форму осуществляется методом «декомпозиции без потерь» . Такая декомпозиция должна обеспечить то, что запросы (выборка данных по условию) к исходному отношению и к отношениям, получаемым в результате декомпозиции, дадут одинаковый результат.
Операция проекции • Основной операцией метода является операция проекции. • Предположим, что в отношении R(A, B, C, D, E, . . . ) устранение функциональной зависимости C D позволит перевести его в следующую нормальную форму. Для решения этой задачи выполним декомпозицию отношения R на два новых отношения R 1(A, B, C, E, . . . ) и R 2(C, D). Отношение R 2 является проекцией отношения R на атрибуты С и D.
• Отношение находится в первой нормальной форме, если каждый его элемент имеет и всегда будет иметь атомарное значение, то есть на пересечении столбца и строки в таблице может быть только одно значение.
• Отношение находится во второй нормальной форме, если оно находится в первой нормальной форме и все неключевые атрибуты полностью функционально зависят от ключа этого отношения, то есть для однозначной идентификации каждого неключевого атрибута требуется весь ключ.
• Отношение находится в третьей нормальной форме, если оно является отношением во второй нормальной форме и устранены функциональные транзитивные зависимости между неключевыми атрибутами (когда один неключевой атрибут может быть специфицирован одним или несколькими другими неключевыми атрибутами).
• Четвертая нормальная форма — требует, чтобы независимые элементы данных, между которыми существует связь типа M — M, не хранились в одной таблице. • Пятая нормальная форма — требует обеспечения возможности точного востановления исходной таблицы из таблиц на которых она основана.
Реляционная алгебра.ppt