Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Эвристические правила преобразования операций реляционной алгебры



Операндами операций реляционной алгебры являются отношения, поэтому для их выполнения необходимо просмотреть все кортежи исходного отношения (или отношений). Следствием этого является большая размерность реляционных операций. Уменьшения размерности операций можно достичь, изменяя последовательность выполняемых операций. В качестве примера приведём отношения R1 и R2, содержащие по 1000 кортежей, причём только 10 кортежей в каждом отношении удовлетворяют условию F. Если выполнять следующую последовательность операций:

sF (R1 U R2),

то после выполнения объединения получится 2000 кортежей (если отношения не содержат одинаковых кортежей), а после селекции останется 20 записей. Если изменить последовательность выполнения операций:

sF (R1) U sF (R2),

то после селекции останется по 10 записей из каждого отношения, объединение которых даст 20 требуемых кортежей. Следовательно, не потребуется хранить промежуточный результат в 2000 кортежей и просматривать его для поиска кортежей, удовлетворяющих условию.

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

Закон коммутативности для декартовых произведений:

R1 ґ R2 = R2 ґ R1

Закон коммутативности для соединений (F – условие соединения):

R1 ><F R2 = R2 ><F R1

Закон ассоциативности для декартовых произведений:

(R1ґ R2) ґ R3 = R1 ґ (R2 ґ R3)

Закон ассоциативности для соединений (F1,F2 – условия):

(R1 ><F R2) >< F R3 = R1 ><F (R2 >< F R3)

Комбинация селекций (каскад селекций):

sF1 (sF2 (R)) = s F1/\F2(R)

Комбинация проекций (каскад проекций):

p A1,A2,...,Am (p B1,B2,...,Bn(R)) = p A1,A2,...,Am (R)

где {Am} М {Bn}.

Перестановка селекции и проекции:

sF (p A1,A2,...,Am (R)) = p A1,A2,...,Am (sF (R))

Перестановка селекции с объединением:

sF (R1 U R2)=sF (R1) U sF (R2)

Перестановка селекции с разностью:

sF (R1 - R2)=sF (R1) - sF (R2)

Перестановка проекции с декартовым произведением:

p A1,A2,...,Am (R1 ґ R2) = p C1,C2,...,Cn(R1) ґ p B1,B2,...,Bk(R2)

где {Cn} М {Am}, {Bk} М {Am} и атрибуты Cn представлены в отношении R1, а атрибуты Bk - в отношении R2.

Перестановка проекции с объединением:

p A1,A2,...,Am (R1 U R2) = p A1,A2,...,Am (R1) U pA1,A2,...,Am (R2)

Перестановка селекции с декартовым произведением:

sF (R1 ґ R2) = sF (R1) ґ R2

если F содержит атрибуты, присутствующие только в R1;

sF (R1 ґ R2) = R1 ґ sF (R2)

если F содержит атрибуты, присутствующие только в R2;

sF (R1 ґ R2) = sF1(R1) ґ sF2 (R2)

если F=F1/\F2, и F1 содержит атрибуты, присутствующие только в R1, а F2 содержит атрибуты, присутствующие только в R2;

sF (R1 ґ R2) = sF2 (sF1(R1) ґ R2)

если F=F1/\F2, и F1 содержит атрибуты, присутствующие только в R1, а F2 содержит атрибуты, присутствующие и в R1, и в R2.





Дата публикования: 2014-11-29; Прочитано: 316 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...