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


Розділ 6  РОЗПОДІЛЕНІ БАЗИ ДАНИХ

6.1. ПОНЯТТЯ РОЗПОДІЛЕНОЇ БАЗИ ДАНИХ

У розвитку сучасних інформаційних систем намітилася тенденція пере­ходу від локальних баз даних до створення розподілених баз.

Розподілена база даних (DDB — distributed database) — це сукупність взаємопов'язаних баз даних, розподілених у комп'ютерній мережі. Система управління розподіленою базою даних визначається як програмна система, яка управляє базою даних у такий спосіб, щоб її розподіленість була прозо­рою для користувачів [І]. Прозорість — це досить поширене поняття неза­лежності даних у розподілених системах, яке передбачає, що користувач у цій системі працює з розподіленою базою даних як з логічно цілісною су­купністю даних, тобто на його роботу не повинно впливати те, як дані роз­поділені між вузлами мережі. Отже, в розподіленій системі користувачеві надається логічно цілісне подання фізично розподіленої бази даних.

На ринку програмних засобів з'явились розподілені СУБД, які дають змогу підтримувати та обробляти базу даних у багатокористувацьких сис­темах. Основною задачею розподіленої СУБД є забезпечення управління доступом до даних багатьох споживачів і цілісності й узгодженості даних в умовах використання мережі ЕОМ. Тобто основна функція таких СУБД — це координування спільної роботи багатьох користувачів з розподіленою інформацією. Розв'язання проблеми автономності роботи користувачів ро­зподіленої системи створює багато специфічних проблем в організації баз даних, оскільки різні користувачі можуть працювати паралельно з одними й тими самими даними, виконуючи з ними різні перетворення.

6.2. СТРАТЕГІЇ РОЗПОДІЛУ ДАНИХ

Розглянемо загальні стратегії розподілу даних між вузлами мережі ЕОМ без урахування особливостей та обмежень конкретної розподіленої СУБД. Схарактеризуємо альтернативні теоретично можливі стратегії розподілення даних у РБД [20]: централізована; розподілена без дублюван­ня; розподілена з дублюванням; мішана, чи комбінована.

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

Ця стратегія дуже зручна й має ряд переваг. Розглянемо основні пере­ваги цієї стратегії. Якщо дані зберігаються в одному місці, то значно простіше реалізувати проблему забезпечення цілісності та захисту інформації. При централізованій стратегії спрощується технологія створен­ня та ведення файлів БД, оскільки можна скористатися єдиними стандарт­ними процедурами та методами ведення і підтримування БД в актуальному стані. Проектування такої розподіленої бази даних також досить просте порівняно з іншими стратегіями.

Нарівні з перевагами централізована стратегія має ряд недоліків. За та­кої стратегії можуть виникати черги, що призводить до різкого збільшення часу реакції системи. Крім того, витрачається певний час і на процедури, пов'язані з передаванням інформації. Обсяг бази даних обмежений пам'яттю однієї ЕОМ для зберігання даних.

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

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

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

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