ЗАГАЛЬНЕ ПРИЗНАЧЕННЯ АЛГЕБРИ

Підібємо підсумок викладеного вище в цьому розділі У ній визначенареляційна алгебра, тобто колекція операцій на відносинах У число розглянутих операцій входять обєднання, перетин, різниця, твір, скорочення, проекція, зєднання і поділ, а також операція перейменування атрибута, RENAME (ПО суті, саме це безліч операцій, крім RENAME, було спочатку визначено Коддом [71]) Тут також представлений синтаксис даних операцій і показано застосування цього синтаксису на багатьох прикладах і ілюстраціях

Але, як було зазначено в цьому описі, вісім операцій Кодда НЕ складають мінімально можливого безлічі (і не були навіть задумані як такі), оскільки деякі з них не є примітивними і можуть бути визначені в термінах інших операцій Наприклад, операції зєднання, перетину і поділу можуть бути визначені в термінах інших пяти операцій (див вправу 76), тому їх можна виключити без втрати будь-яких функціональних можливостей Але жодна з решти пяти операцій не може бути визначена в термінах інших чотирьох, тому дані пять операцій можуть розглядатися як складові безліч примітивних операцій або мінімальне безліч (Проте, слід зазначити, що це – не єдине можливе мінімальне безліч) 4 Але на практиці ці додаткові операції (особливо зєднання) є настільки корисними, що потрібно зробити все можливе щодо забезпечення їх безпосередньої підтримки

На даному етапі необхідно внести ясність у одне важливе питання Хоча про це явно не було сказано, але наведене вище зміст даної глави з усією очевидністю наводить на думку, що основне призначення розглянутої тут алгебри полягає

4 Це твердження вимагає певного уточнення По-перше, оскільки було показано, що твір – це окремий випадок зєднання, у вказаному безлічі примітивів твір може бути замінене зєднанням По-друге, фактично необхідно включити операцію RENAME, оскількирозглянута тут алгебра (на відміну від описаної в [71]) заснована на використанні імен атрибутів, а не їх порядкового розташування По-третє, в [33] описана свого роду версія із скороченим безліччю команд даної алгебри, звана алгеброю А, яка дозволяє реалізувати всі функціональні можливості первісної алгебри Кодда (а також операції RENAME та кількох інших корисних операцій) з використанням всього лише двох примітивів, званих remove (видалення) і nor (виняткове АБО )

просто у забезпеченні вибірки даних Але це не відповідає істині Основне призначення цієї алгебри полягає в забезпеченні можливості складання реляційних виразів Ці вислови, в свою чергу, можуть використовуватися в багатьох різних операціях, включаючи вибірку, але не обмежуючись тільки вибіркою Деякі можливі області застосування таких виразів показані в наведеному нижче списку (який не слід вважати вичерпним)

■ Визначення області дії операції вибірки, тобто визначення даних, кото риє повинні бути отримані в деякій операції вибірки (як уже було під робно описано)

■ Визначення області дії операції оновлення, тобто визначення даних, які повинні бути вставлені, змінені або видалені в деякій операції оновлення (див розділ 6)

■ Визначення обмежень цілісності, тобто визначення деяких обмежень,

яким повинна задовольняти база даних (див главу 9)

Визначення похідних змінних відносини, тобто визначення даних, які повинні бути включені в представлення або його (див главу 10)

■ Визначення вимог до стабільності, тобто визначення даних, які по винні входити в сферу дії деякої операції управління паралельним ви полнением (див розділ 16)

■ Визначення обмежень захисту, тобто визначення даних, права доступу до яких повинні надаватися за допомогою засобів захисту того чи іншого типу (див главу 17)

Взагалі кажучи, фактично ці вирази служать як високорівневого символічного опису намірів користувача (наприклад, стосовно до деякого конкретним запитом) А саме тому, що вони є високорівневими і символічними, самі ці вирази можуть стати предметом дії різних високорівневих, символічних правил перетворення Наприклад, наступний вираз

((SP JOIN S) WHERE P # = Р # (Р2)) {SNAME}

що має сенс Визначити імена постачальників, які постачають деталь Р2 (Див приклад 751), може бути перетворено в логічно еквівалентне, але, можливо, більш ефективне вираз, представлене нижче

((SP WHERE Р # = Р # (Р2)) JOIN S) {SNAME}

(Упражненіе У якому сенсі другий вираз є лише можливо, більш ефективним? Чому тільки можливо?)

Таким чином, розглянута алгебра служить зручною основою для оптимізації

(Додаткова інформація по цій темі наведена в розділі 35 глави 3) Тому,

навіть якщо користувач формулює запит до першого з двох щойно наведених форм, оптимізатор системи повинен перетворити його перед виконанням в системі в другу форму (в принципі продуктивність виконання будь-якого запиту не повинна залежати від того, в якій конкретній формі він був фактично сформульований користувачем) Додаткова інформація на цю тему приведена в главі 18

На завершення даного розділу зробимо одне зауваження Саме завдяки своєму фундаментальному характером описана тут алгебра часто використовується як свого роду еталон, що дозволяє оцінити виразну потужність деякого конкретної мови По суті, мова називається реляційно повним [71], якщо він є, щонайменше, таким же потужним, як і ця алгебра, тобто якщо його вираження дозволяють скласти визначення будь-якого відношення, яке може бути визначене за допомогою виразів алгебри (під цим мається на увазі оригінальна алгебра, яка описана у попередніх розділах) Поняття реляційної повноти розглядається більш докладно в наступному розділі

Джерело: Дейт К Дж, Введення в системи баз даних, 8-е видання: Пер з англ – М: Видавничий дім «Вільямс», 2005 – 1328 с: Ил – Парал тит англ

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*