Проектування баз даних
27


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

Зберігання адресних посилань (вказівок) потребує додаткових витрат пам'яті, які включають багато елементів дублювання. Якщо, наприклад, проект виконують кілька працівників, то його фізична адреса повинна дуб­люватися для кожного співробітника.

Ієрархічні моделі характеризуються ще однією особливістю, пов'яза­ною з виконанням технологічних операцій з актуалізації БД. При вилученні екземпляра вихідного сегмента також вилучаються всі пов'язані з ним ек­земпляри породжених сегментів, тобто весь логічний запис. Екземпляр по­родженого сегмента не може існувати без відповідного екземпляра вихідного. Наприклад, неможливо внести інформацію про нове обладнання, не внісши відповідних даних про деталі, які будуть оброблятись на цих вер­статах, за наявності співвідношення вихідний-породжений між сегментами ДЕТАЛЬ:ВЕРСТАТ.

Єдиний вихід — внести інформацію про якісь фіктивні деталі, але про це має пам'ятати адміністратор БД і фіктивна інформація повинна з певним часом бути замінена на реальну. Тому процедури вилучення чи поповнення ієрархічної БД необхідно завжди виконувати дуже ретельно та уважно, щоб не знищити важливих даних чи, навпаки, не використати штучні дані.

3.4. ВІДОБРАЖЕННЯ НА СІТКОВУ МОДЕЛЬ

Сіткова модель БД — це орієнтований граф з пойменованими дугами і вершинами. Відображення інфологічної моделі на сіткову є складним про­цесом, який має ряд альтернативних рішень. Розглядаючи перехід від інфологічної моделі до сіткової, будемо орієнтуватись на моделі робочої групи за базами даних (РГБД) Асоціації з мов систем обробки даних — КОДАС1Л (Conference On Date Systems Languages — CODASYL), які отри­мали практичний розвиток. Згідно з пропозиціями КОДАС1Л у сіткових моделях файли є рівноправними, тобто можуть виступати в різних зв'язках — в одному випадку як власники, в іншому — як підпорядковані файли.

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

Основними структурними елементами моделей цього типу є агрегат, запис і набір даних.

При відображенні інфологічної моделі на сіткову інформаційним об'єктам ставлять у відповідність записи. Кожний запис вміщує деяку мно­жину атрибутів. Розрізняють такі поняття, як «тип запису» і «екземпляр за­пису». Тип запису — це абстрактні характеристики, а «екземпляр запису» — їх конкретні значення. Наприклад, тип запису: ПОСТАЧАЛЬНИК (код постачальника, назва постачальника, адреса постачальника, телефон), екземпляром цього типу запису буде: 105, Вега ЛТД, Київ-147, вул. Бойченка, 75, 552-33-98. Отже, кожному типу запису в БД може відповідати деяка сукупність екземплярів.

Усередині запису можуть виділятись агрегати. Агрегат — це пойменована сукупність логічно взаємозв'язаних атрибутів усередині типу запису: ними можуть бути вектори, групи і повторюючі групи.

На рис. 3.4 зображено внутрішню структуру, що може підтримуватись у сіткових моделях і в якій агрегат «іноземна мова» представлений як век­тор, а агрегат «адреса» — як група.

Особа

Табл. №

ПІБ

Посада

Іноземна мова

Адреса

Індекс

місто

вулиця

кв-ра

Рис. 3.4. Структура запису, який вміщує агрегати

Звертаючись до даних, можна звертатись як до запису в цілому, так і до окремих агрегатів, що входять до їх складу. Отже, запне — це агрегат, який не входить до складу інших агрегатів і є основною одиницею обробки БД (записи запам'ятовуються, вилучаються, поповнюються). Поняття запису в сіткових моделях традиційне.

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

Із рис. 3.4 видно, що для відображення багатозначних зв'язків у сіткових моделях не обов'язково