Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






СТУДЕНТСЬКИЙ_КОЛЕКТИВ та УЧБОВА_ГРУПА,






КІМНАТА_В_ГУРТОЖИТКУ та СТУДЕНТ.

 

Взаємозв'язок між цими об'єктами показаний на рис.3.9, звідки можна побачити, що дана схема не є ієрархічною, оскільки породжений елемент СТУДЕНТ має два вихідних.

 

 

На рисунку 3.9 представлена мережна структура, в якій між двома об'єктами присутні два види взаємозв'язку:

 

ОДИН-ДО-БАГАТЬОХ (наприклад, між об'єктами НАВЧАЛЬНА_ГРУПА-СТУДЕНТ

та

БАГАТО-ДО-ОДНОГО (СТУДЕНТ-КІМНАТА_В_ГУРТОЖИТКУ).

 

Цей вид зв'язку закладено в ієрархічних структурах при умові, що дані зв'язки ОДИН-ДО-БАГАТЬОХ 1: N існують відповідно між вихідними та породженими, а зв'язок БАГАТО-ДО-ОДНОГО N: 1 - між породженими та вихідними вузлами. Виконання цієї умови для відповідних вузлів мережної схеми говорить про просту мережну структуру. Складною мережною структурою називають схему, в якій присутній хоча б один зв'язок БАГАТО-ДО-БАГАТЬОХ – N: N.

На рис.3.11 показаний приклад складної мережної структури та можливі взаємозв'язки між об'єктами. В цьому прикладі вузол ВИКЛАДАЧ може мати декілька породжених, тому що викладач веде заняття більш ніж з одним студентом. А кожен студент навчається більш ніж у одного викладача.

 

 
 

 

 


Рис. 3.11 - Складна мережна структура

 

Розділення мережних структур на два типи (складні та прості) необхідно хоча б тому, що структури, побудовані з використанням зв'язку БАГАТО-ДО-БАГАТЬОХ, вимагають для їх реалізації використання більш складних методів. Крім того, деякі системи керування базами даних можуть підтримувати прості мережні структури, але не можуть підтримувати складні. Наприклад, СКБД DMS, DBMS, СЕКТОР дозволяють описувати прості мережні структури. Реалізація складних мережних структур можлива і в цих системах керування базами даних шляхом приведення Їх до простішого вигляду.

Будь-яку мережну структуру можливо привести до простішого вигляду, якщо ввести надлишковість (рис.3.12). Якщо надлишковість, яка при цьому виникає, є допустимою, то такий шлях дозволяє підтримувати мережні структури даних за допомогою СКБД, які орієнтовані на ієрархічну організацію даних.

 

?

Рисунок 3.12-Представлення простої мереженої структури:

а, б - у вигляді одного дерева;
в - у вигляді суми дерев

 

Мережна структура даних базується також на використанні представлення даних у виді графа. C точки зору теорії графів мережній структурі відповідає довільний граф: в ієрархічних структурах запис-нащадок повинна мати в точності одного предка; у мережній структурі даних нащадок може мати будь-як число предків. Вершини графа використовуються для інтерпретації типів об'єктів. Дуги графа використовуються для інтерпретації типів зв'язків між типами об'єктів. Таке зображення структури БД називається діаграмою Бохмана.

Мережна БД складається з набору записів і набору зв'язків між цими записами. Тип зв'язку визначається для двох типів записів: предка і нащадка. Екземпляр типу зв'язку (у деякій літературі набір) складається з одного екземпляра типу запису предка й упорядкованого набору екземплярів типу запису нащадка.

 

 

 
 

 

 


Якщо повернутися до приклада з виданням тематичних збірників і спробувати розширити його, щоб він більш повно відповідав реальним взаєминам, то схема мережної моделі і відповідний опис її мовою CODASYL будуть виглядати в такий спосіб.

 

Бази даних, яки описуються мережною моделлю, складаються з декількох областей (рис.3.13). Кожна область складається з записів, які в свою чергу складаються з полів.

Рисунок 3.13 - Структура мережної бази даних

 

Фактичне об'єднання записів (з різних областей) в логічну структуру можливе не тільки по областях, але й за допомогою так названих наборів. Термін набір є основною конструкцією мови системи баз даних КОДАСІЛ.

З точки зору теорії графів: Набір - це пойменоване дворівневе дерево, яке дозволяє формувати багаторівневі дерева та прості мережні структури. Таким чином, база даних КОДАСІЛ складається з деякої кількості наборів.

Використовуючи дворівневі дерева зв'язків, адміністратор БД може конструювати достатньо складні структури даних.

З точки зору БД: Набір - це екземпляр пойменованої сукупності записів. Для кожного типу набору кожний тип запису може бути оголошений його власником. Кожний набір повинен мати один екземпляр власника запису та будь-яку кількість екземплярів кожного типу запису - членів набору. Більш строго, набір - пойменована сукупність записів, у якому запису одного типу з'являються власниками набору, у записі інших типів - членами цього набору.

Наприклад, набір можна використовувати для об'єднання записів про студентів однієї групи (див. рис.3.10).

 

Перерахуємо властивості, що притаманні набору (Пр.7):

 

а) набір - це пойменована сукупність зв'язаних записів;

б) в кожному екземплярі набору присутній тільки один екземпляр власника;

в) екземпляр набору може мати нуль, один або декілька записів-членів;

г) набір вважається пустим, якщо жодний з екземплярів запису-члена не має зв'язків з відповідним екземпляром запису - володаря;

д) екземпляр набору існує після запам'ятовування запису-володаря;

е) тип набору є логічний взаємозв'язок ОДИН-ДО-БАГАТЬОХ між володарем та членом набору.

ж) кожному типу набору надається ім'я, що дозволяє одній і тій самій парі типів об'єктів брати участь у декількох взаємозв'язках. (примерз рис.3.7: студент може входити не тільки в набір «ГРУПА», але й в набір «ПРОФКОМ»).

 

Логічний взаємозв'язок ОДИН-ДО-БАГАТЬОХ між володарем та членом набору показаний на (рис.3.14);

 

 

 
 

 

 


Рисунок 3.14 - Тип набору " Склад групи"

 

Необхідно розрізняти тип та екземпляр набору. Але спочатку пояснимо різницю між поняттями тип та екземпляр запису.

СТУДЕНТ є типом запису, а рядок символів " Захаров Іван Вікторович, член профкому, кімн. 638" - екземпляром типу запису СТУДЕНТ. Іншими словами, в базі даних можуть зберігатися один чи декілька екземплярів запису деякого типу.

Подібне відношення існує і між типом набору та екземпляру. У прикладі на рис.3.14 наведений тип набору СКЛАД ГРУПИ, а на рис.3.15 - його екземпляр, який вміщує екземпляр типу запису-володаря ГРУПА " 832 група, куратор Іванов І.П., каф. кібернетики" та N екземплярів типу запису-члена: " 1013 Захаров І.П., староста групи", " 201К Кирилова О.Б.",..., " 426Х Харламов О.М."

 

Запис-член 1 Запис-член 2 Запис-член N


Екз. типу запису-володоря. Екземпляри типу запису-члена СТУДЕНТ.

 

 

Рисунок 3.15. - Екземпляр набору СКЛАД_ГРУПИ

 

Таким чином, екземпляр типу набору складається з одного екземпляру типу запису-володаря, нуля чи більше екземплярів типу запису-членів даного типу набору. Між екземпляром типу запису-володаря та екземпляром типу запису-члена існує взаємозв'язок ОДИН-ДО-БАГАТЬОХ. Певний екземпляр типу запису-члена в екземплярі даного типу набору не може одночасно належати більш ніж одному екземпляру типу запису-володаря. Іншими словами, унікальність володаря типу набору є обов'язковою.

В моделі даних, що являє собою взаємозв'язок ОДИН-ДО-БАГАТЬОХ, тип запису-володаря має від 0 до N екземплярів типу запису-члена. В свою чергу тип запису-члена в іншому наборі може мати роль типу запису-володаря. Запис-володар даного набору може грати дану роль у декількох наборах. Така структура є ієрархією. Отже, ієрархічна модель даних є окремим випадком мережної моделі.

12.4. Переваги і відмінності мережної моделі.

 

Таким чином, в ієрархічних моделях будь-який об’єкт може підпоряд­ковуватися лише одному об’єкту вищестоящого рівня. У мережних моделях - будь-який об’єкт (запис, файл) може бути підпоряд­кований кільком об’єктам.

Мережні моделі даних порівняно з ієрархічними є більш універсальним засобом відображення структури інформації для різних предметних областей. Взаємозв’язки даних більшості предметних областей мають мережний характер, що обмежує використовування СУБД з ієрархічною моделлю даних. Мережні моделі дозволяють відображати також ієрархічні взаємозв’язки даних.

У мережних моделях безпосередній доступ за ключем може забезпечуватись до будь-якого об’єкта незалежно від рівня, на якому він перебуває в моделі. Можливий також доступ за зв’язками до будь-якої точки доступу.

Приклади типових операторів маніпулювання мережними даними: (Пр.6)

1) пошук конкретного запису в наборі однотипних записів;

2) перехід від предка до першого нащадка за деяким зв'язком;

3) перехід до наступного нащадка в деякому зв'язку;

4) перехід від нащадка до предка за деяким зв'язком;

5) створення нового запису;

6) знищення запису;

7) модифікація запису;

8) включення в зв'язок;

9) виключення зі зв'язку;

10) перестановка в інший зв'язок і т.д.

 

Суттєва відмінність між мережною та ієрархічною моделями даних полягає в тому, що в мережній моделі кожний запис може брати участь в будь-якій кількості наборів. Розглянемо мережну моделі, що представляється двома типами наборів (Пр.8):

 

ВЧИТЕЛЬ_ВИКЛАДАЄ_ДИСЦИПЛІНУ

Та

СТУДЕНТ_НАВЧАЄТЬСЯ_ ДИСЦИПЛІНІ,

 

На рис.3.16 представлена дана мережна модель, де запис-член ДИСЦИПЛІНА входить до обох типів наборів та є зв'язкою цих наборів. Крім того, будь-який запис мережної моделі може мати роль як володаря, так і члену набору.

 

Рисунок 3.16 - Представлення відношення M: N у мережній моделі

 

До переваг мережних структур слід віднести наявність СКБД, які успішно реалізують таку організацію, а також простоту реалізації зв'язків " багато до багатьох", які часто зустрічаються в реальному світі. Недолік таких структур полягає в їх складності по відношенню до ієрархічних структур. Прикладному програмісту часто необхідно знати логічну структуру бази даних. При реорганізації бази даних не виключається в ряді випадків втрата незалежності даних.

Схематичну відмінність у топології ієрархічної і мережної моделей проілюстровано на рис. 3.17.

 

Мережна модель

 

Представлення даних ієрархічними та мережними структурами, в загальному випадку, перешкоджає внесенню багатьох змін, пов'язаних з розширенням бази даних. Це може призвести до порушення логічного представлення даних, схем, підсхем, а, отже, до зміни в прикладних програмах.

 

 

Контрольні запитання.

1. Які типи зв'язків використовують в мережних структурах?

2. В чому відмінність простої і складної мережних структур?

3. В чому полягають переваги та недоліки мережних структур?

4. Яким чином мережні структури подаються ієрархічними?

 

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.