
Тема 5-1. Системи управління базами даних 8
Тема 5.1. Реляційна алгебра.
1. Основи реляційної алгебри
2. Алгебра реляційних операцій
1. Основи реляційної алгебри
Деяка алгебра, взагалі говорячи, складається з набору операторів, що застосовуються до атомарних операндів. Наприклад, в алгебрі арифметики атомарні операнди представляють собою змінні виду Х і константи, а операторами слугують звичайні арифметичні оператори складання, різниці, множення і ділення. Люба алгебра дозволяє створювати вирази шляхом застосування операторів до операндів або до виразів. Для групування операторів і операндів застосовують круглі дужки. Арифметичний вираз, наприклад, може мати наступний вигляд (x+y)*z.
Реляційна алгебра – це різновид алгебри. В ній підтримуються наступні види атомарних операндів:
1) змінні – представляють відношення;
2) константи – представляють результуючі відношення.
Але з метою підвищення ефективності обробки запитів було прийняте рішення розглядати відношення не як множини, а як мультимножини. Іншими словами, дозволяється присутність кортежів-дублікатів.
Реляційна алгебра – це спеціальна алгебра, яка використовується для формального опису засобів конструювання нових відношень на основі заданих. Задані відношення зберігають інформацію, а нові відношення містять відповіді на запити стосовно певних властивостей цієї інформації.
Реляційна алгебра була розроблена Е.Ф.Коддом у вигляді сукупності операторів, що виконуються над множинами кортежів (тобто відношеннями) і що забезпечують можливість опису типових запитів стосовно вмісту відношень. Спочатку сукупність операторів включала п’ять операцій над множинами: об’єднання, різниця, декартовий добуток, вибір і проекцію. Потім до них були додані реляційні операції над мультимножинами, операції з’єднання (join), сортування, агрегування і групування, операції для опису обмежень.
Операції реляційної алгебри можуть бути поділені на такі класи:
Звичайні операції над множинами: об’єднання (union), пересічення (intersection), різниця (difference), які застосовуються до відношень.
Операції видалення частин відношення: операція вибору (selection) призводить до відкидання деяких кортежів (рядків), а операція проекції (projection) – до усунення деяких атрибутів (стовпців).
Операції сполучення кортежів двох відношень: наприклад, операція декартового добутку дозволяє сполучати у межах кортежів результуючого відношення усі можливі комбінації кортежів двох вихідних відношень, а різні різновиди операції з’єднання (join) застосовуються до вибіркового злиття кортежів.
Операція перейменування (renaming) атрибутів або відношення цілком.
2. Алгебра реляційних операцій
Операція об’єднання –
(рис.5.1).
R, S – відношення, які повинні задовольняти вимогам:
мати схеми з однаковими наборами атрибутів, типи (домени) яких повинні попарно співпадати;
атрибути (стовпці) повинні слідувати в однаковому порядку.
назви атрибутів повинні співпадати (якщо не співпадають, то перейменувати).
title |
year |
length |
filmtype |
studioName |
starName |
Star Wаrs |
1977 |
124 |
Color |
Fox |
Carrie Fisher |
Wayne’s World |
1992 |
95 |
Color |
Paramount |
Mike Meyers |
Відношення R
title |
year |
length |
filmtype |
studioName |
starName |
Star Wаrs |
1977 |
124 |
Color |
Fox |
Carrie Fisher |
Mighty Ducks |
1991 |
104 |
Color |
Disney |
Emilio Estevez |
Wayne’s World |
1992 |
95 |
Color |
Paramount |
Mike Meyers |
Відношення S
title |
year |
length |
filmtype |
studioName |
starName |
Star Wаrs |
1977 |
124 |
Color |
Fox |
Carrie Fisher |
Mighty Ducks |
1991 |
104 |
Color |
Disney |
Emilio Estevez |
Wayne’s World |
1992 |
95 |
Color |
Paramount |
Mike Meyers |
Рис.5.1. Об’єднання відношень R і S
Відмітимо, що два однакові кортежі, що відповідають актрисі Керрі Фішер замінені одним. Аналогічна заміна у результуючому відношенні проведена і для кортежів актора Майка Мейерс
Операція пересічення – R∩S. Результуюче відношення приведене на рис.5.2
title |
year |
length |
filmtype |
studioName |
starName |
Star Wаrs |
1977 |
124 |
Color |
Fox |
Carrie Fisher |
Wayne’s World |
1992 |
95 |
Color |
Paramount |
Mike Meyers |
Рис. 5.2. Пересічення відношень R і S
Операція різниця відношень – S-R. Результуюче відношення приведене на рис.5.3.
title |
year |
length |
filmtype |
studioName |
starName |
Mighty Ducks |
1991 |
104 |
Color |
Disney |
Emilio Estevez |
Рис. 5.3. Різниця відношень S і R