
ОБДЗ / Лекции Access / Проектування РБД / 4_даталогiчне_проектування
.pdf4 ДАТАЛОГІЧНЕ МОДЕЛЮВАННЯ
4.1 Ранні моделі даних
При проектуванні ІС логічна модель даних створюється на стадії аналізу, коли за основу можна взяти результати концептуального моделювання ПО, або розробляється самостійно після передпроектного обстеження.
На відміну від концептуального, логічне моделювання несе в собі порівняно мале семантичне навантаження. Його часто розуміють вже як логічне моделювання БД, а не моделювання ПО. Звичайно вважають, що проектується ніби "логічно одна" БД всієї ІС. Тому далі будемо вживати термін логічна модель (ЛМ) для БД. Комп’ютерно-орієнтована ЛМ повинна описати БД, враховувати можливість використання СУБД, але тільки з точки зору структури БД безвідносно до конкретної СУБД.
Як зазначено вище, БД – це сукупність взаємопов’язаних даних, організованих згідно зі схемою даних.
Схема даних – це формальний опис БД згідно з конкретною моделлю БД. А модель БД – це логічне подання організації даних у БД згідно з заданою структурою. Структура даних залежить від технології організації БД. А організація БД – це представлення і управління даними відповідно до визначених угод.
Таким чином технології організації БД, а з ними структури даних, моделі БД, а також відповідні СУБД поділяють на три основні типи:
1)ранні (дореляційні);
2)реляційні;
3)постреляційні.
Поняття МД фактично сформувалося у фахівців в області БД тільки разом з реляційним підходом. Фактично спочатку з’явилися ранні системи, а пізніше на основі аналізу і виявлення загальних ознак цих систем були сформовані їх абстрактні уявлення у вигляді МД.
До ранніх систем можна віднести:
1)ієрархічні системи;
2)мережні системи;
3)системи, засновані на інвертованих списках.
При розгляді цих систем можна побудувати ланцюжок визначень за алгоритмом: Структура даних → Модель даних → БД → Система управління.
Ієрархічна структура – це структура даних, що складає множину, частково впорядковану так, що існує тільки один елемент цієї множини, який не має попереднього, а всі інші елементи мають тільки один попередній.
Ієрархічна МД – це МД для подання даних за ієрархічною структурою. Ієрархічна БД – це БД, реалізована згідно з ієрархічною моделлю даних.
У цій МД дані представляються у вигляді деревоподібного графа. В якості вузлів можуть виступати об’єкти, наприклад, факультети, кафедри, викладачі, спеціальності, курси, групи, студенти. Вигляд цієї структури наведений на рис.4.1а. Для зручності об’єкти позначені цифрами.
Якщо об'єкти моделі представити у вигляді двох типів – предків і
22

нащадків, тоді очевидно, що в ієрархії тільки один об'єкт моделі не має предка, а всі інші мають тільки одного предка. Загалом ієрархічна БД складається з упорядкованого набору дерев (рис. 4.1.б).
а) |
б) |
Рисунок 4.1 |
– Графічне подання БД з ієрархічною моделлю |
Простота організації, наявність заздалегідь заданих зв'язків між сутностями, подібність з фізичними моделями даних дозволяли досягати прийнятної продуктивності ієрархічних СУБД на повільних ЕОМ з дуже обмеженими обсягами оперативної пам'яті.
Найбільш відомим і розповсюдженим представником ієрархічних систем є
Information Management System (IMS) фірми IBM (1968 р.).
Мережні МД також створювалися у час і для малоресурсних ЕОМ. Мережна структура – це структура даних, що складає множину, частково
впорядковану так, що хоча б для деяких елементів існує більш одного попереднього. Іншими словами, один об'єкт моделі може мати декілька предків. У цій моделі дані представляються в вигляді довільного графа. Вид цієї структури наведено на рис. 4.2.
а) б) Рисунок 4.2 – Графічне подання БД із мережною організацією
23
Архітектура мережних систем заснована на пропозиціях групи по БД Data Base Task Group (DBTG) Комітету з мов програмування організації Conference on Data Systems Languages (CODASYL), відповідальної за визначення мови програмування Кобол. Звіт групи DBTG був опублікований у 1971 р.
У 70-х роках минулого століття з'явилося кілька мережних систем.
Типовим представником була система Integrated Database Management System (IDMS) компанії Cullinet Software, призначена для використання на машинах основного класу фірми IBM під управлінням різних операційних систем. Пізніше ця система одержала розвиток у мережній системі CA-IDMS/DB фірми
Computer Associates International (CAI). Використання мережних МД дозволило збільшити продуктивність відповідних СУБД, але водночас істотно ускладнило ці системи.
В ієрархіях запис-нащадок повинен мати виключно одного предка, а в мережах даних нащадок може мати будь-яке число предків. Тому можна вважати, що мережний підхід до організації даних є розширенням ієрархічного.
Теоретично будь-яка мережна структура при необхідності може бути приведена до ієрархічної. Досить вказати в дереві об'єкти, що мають декількох нащадків, кілька разів. Це, звичайно, призведе до надмірності даних, але може значно спростити структуру. При перетвореннях слід пам’ятати, що для БД визначається певний порядок обходу по рівнях та об’єктах: зверху – униз, зліва
– праворуч.
Наведені вище МД попарно еквівалентні між собою: 4.1а 4.2а, 4.1б 4.2б.
При необхідності може бути виконане і зворотне перетворення. Складність практичного використання ієрархічних і мережних СУБД
змушувала шукати інші способи представлення даних. Наприкінці 60-х років з'явилися СУБД на основі інвертованих файлів, що відрізнялись простотою організації і наявністю дуже зручних мов маніпулювання даними. До числа найбільш відомих і типових представників таких систем відносять систему
Adabas компанії Software AG і систему Datacom/DB компанії Applied Data Research (ADR), орієнтовану на використання на машинах основного класу фірми IBM.
Ранні СУБД дозволили зробити крок уперед в обробці даних. Можна вважати, що рівень засобів ранніх СУБД співвідноситься з рівнем файлових систем приблизно так само, як рівень мови Кобол співвідноситься з рівнем мови Асемблера.
Недоліками ранніх СУБД були:
–висока складність у використанні;
–необхідність наявності знань фізичної організації;
–залежність прикладних систем від фізичної організації;
–перевантаженість логіки систем деталями організації доступу до БД. Ранні системи активно використовувалися протягом багатьох років, і у
користувачів накопичені величезні БД. Тому вони продовжують широко використовуватися разом із сучасними системами. Методи ранніх СУБД лягли в основу внутрішньої організації СУБД більш високого рівня.
24
4.2 Поняття реляційної моделі даних
Реляційна модель даних (РМД) базується на понятті реляційної структури. В реляційній структурі дані подаються як таблиці.
Моделі інших типів, які наведені вище на рис. 4.1 та 4.2, можуть бути представлені в вигляді простих і зрозумілих таблиць (табл. 4.1). Як значення таблиць використовуються номери об’єктів.
Таблиця 4.1 – |
Приклади РМД |
|
|
Варіант А |
|
|
|
1 рівень |
|
2 рівень |
3 рівень |
1 |
|
2 |
5 |
1 |
|
4 |
– |
1 |
|
3 |
4 |
1 |
|
3 |
6 |
Варіант Б |
|
|
|
1 |
|
2 |
3 |
1 |
|
3 |
6 |
1 |
|
5 |
7 |
1 |
|
5 |
8 |
2 |
|
4 |
7 |
Побудуємо ланцюжок визначень.
Реляційна МД – це модель даних для представлення даних з реляційною структурою.
Реляційна БД – це БД, яка організована згідно РМД.
Реляційні СУБД (РСУБД, RDBMS від Relational DBMS) - системи, призначені для роботи з реляційними БД.
На сучасному етапі реляційні БД і СУБД займають значний обсяг на ринку програмних продуктів. Більшість з них стали об’єктно-реляційними. В наступних розділах будуть детально розглянуті питання проектування РБД.
Зауважимо, що після появи РСУБД більшість дореляційних систем було оснащено "реляційними" інтерфейсами, проте це не усунуло їхніх недоліків.
РСУБД стали основою для розвитку таких постреляційних БД, як об’ єктно-оієнтовані, розподілені, паралельні, дедуктивні, тощо.
25