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

Крок 2. Початкова схема активується, щоб створити об’єктну схему та порожню базу даних,(N). Здійснюється аналіз, що передує активації, щоб ґарантувати, що початкова схема є істинною схемою.



(N+1)
схема

(N+1)


1. (N+1)

(N) почат­кова

2. (N+1)

база даних


вибирати

схема

активувати



(N) порожня
база даних

Рисунок 10 - Створення порожньої бази даних



Рисунок 11 - Зв'язування та маніпулювання даними

Такий аналіз може виконуватись в цілому або частково через процес маніпулювання даними (N+1), який виконує вибирання, за допомогою іншого процесу, що аналізує початкову схему, або у зв'язку з активацією.

Активація може закінчуватися зміною ознаки, зв’язаної з раніше обраною схемою (N) в базі даних (N+1). Альтернативно, активація може закінчуватися фізичним рухом даних (N+1) та зміною форми по­дання. В обох випадках активована схема повинна бути захищеною від будь-якої зміни, яка б здій­снювалась у базі даних, що не відповідає схемі.

Крок 3. Правила маніпулювання даними, які керують операцією процесу маніпулювання даними (N), маючи доступ до бази даних (N), є тими самими або базованими на правилах, зв’язаних зі схемою (N+1).

Крок 4. Кожний процес маніпулювання даними (N), що повинен мати доступ до бази даних (N), зв’язується з правилами засобу моделювання даних у схемі (N+1). Коли рівень (N+1) є найвищим рівнем, це зв’язування неявне.

Крок 5. Для того, щоб процес маніпулювання міг мати доступ до бази даних (N), схема (N) повинна бути активною.

Кроки 1 і 2 забезпечують створення порожньої бази даних. Крок 3 робить визначеним зв’язок між засобом моделювання даних, визначеним на рівні (N+1), і процесом маніпулювання даними (N). Цей крок робить явним важливий атрибут блокування пар рівнів. Обидві пари рівнів потрібні для того, щоб процеси керування даними могли здійснюватися коректно.

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

  1. Багаторазове зв’язування

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

  1. Керування доступом для пар рівнів

Всі дані є суб'єктом для керування доступом, і у 5.6 опи9ано, як це може виражатися в термінах привілеїв, які належать до типу даних. Ідентифікатор, що належить користувачеві або програмі, яка діє від імені користувача, може бути незалежним від рівня. Привілей, який належить до рівня даних (N), міститься на рівні (N+1).

  1. Модифікування схеми

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

Це можна виконати за допомогою модифікування початкової схеми у базі даних (N+1), активуючи її, щоб створити нову схему (N) та порожню базу даних (рисунок 10), і пересилаючи початкові дані до нової бази даних. Покрокову модифікацію можна також використовувати, щоб задовольнити цю вимогу з тим самим ефектом.

  1. АРХІТЕКТУРНА МОДЕЛЬ

    1. Поняття моделювання

Архітектурна модель виражається у термінах процесорів, які взаємодіють як клієнт та/або сервер. Ці терміни використовуються для посилань на процесори, які виконують функції для конкретної взаємодії.

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

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

  • вказівка, що послуга закінчилася;

  • набір даних, що є результатом викликаної послуги;

  • повідомлення, що послуга недоступна;

  • повідомлення, що запитувані дані недоступні.

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

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

Процесор може бути клієнтом багатьох серверів у будь-який час; кілька серверів можуть підтримувати кілька паралельних клієнтів.

Для докладнішого опису архітектурної моделі слід використовувати:

  • спеціалізацію, де підклас загального класу процесорів визначається як такий, що має індивідуальне ім’я і послуги, які є додатковими або модифікованими формами послуг загального процесора;

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

  1. Загальна модель керування даними

Загальна модель керування даними подає характеристики класів процесорів, спільних для всього керування даними. Складовими загальної моделі керування даними є загальна база даних, загальна схема, контролер загальної бази даних, користувач та процесор користувача.

Ця модель базується на характеристиках класу “загальна база даних” та класу “загальна схема”.

Контролер бази даних забезпечує надання послуг керування даними для визначення та доступу до класу баз даних.

Він зв’язаний з однією схемою та поєднаною з нею базою даних, які разом формують загальне середовище бази даних. Кожна схема має ім’я, яке використовується для ідентифікації середовища бази даних.

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

  • встановлювати сеанс керування даними для процесора-кпієнта, вимагаючи явне або неявне зв'я­зування з пойменованим середовищем бази даних;

  • доповнювати і модифікувати визначення даних у схемі для бази даних;

  • вибирати визначення даних зі схеми для бази даних;

  • доповнювати, модифікувати або вилучати дані в базі даних;

  • вибирати дані з бази даних;

  • починати транзакцію бази даних одного або більше запитів на послугу;

  • закінчувати транзакцію бази даних за допомогою фіксування або повернення транзакції;

  • встановлювати процедури копіювання для бази даних;

  • ініціювати процедури відновлення для бази даних;

  • реорганізувати базу даних;

  • закінчувати сеанс.

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

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

Процесор користувача — це процесор, який забезпечує послуги керування даними для своїх клієнтів.

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

  1. Спеціалізація моделі в різних середовищах

Загальна модель може бути застосована до різних вйдів інформаційних систем, описаних у розділі 5. На абстрактному рівні це застосування може бути подане заміщенням терміну “загальний” на відповідну позначку. Наприклад, модель може бути застосована до середовища розподіленої бази даних у термінах контролера розподіленої бази даних, розподіленої бази даних і розподіленої схеми. Подібним чином може бути ідентифіковано контролер словника бази даних, а без будь-якої позначки контролер бази даних застосовується до середовища бази даних комп'ютерної системи.

  1. Середовище бази даних

Контролер бази даних повинен підтримувати типові послуги для середовища бази даних.

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

Послуги контролера бази даних повинні підтримуватися для багатьох процесорів-клієнтів користу­вача паралельно, проте клієнт повинен мати змогу виконувати транзакції бази даних без впливу з боку інших клієнтів.

Кілька процесорів користувача здатні мати доступ більше, ніж до одного середовища бази даних.

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

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

  1. Керування розподіленими даними

Декомпозиція абстрактної форми моделі в середовищі розподіленої бази даних може використову­ватися, щоб показати послуги контролера бази даних для керування даними, які зберігаються у окремих середовищах бази даних.

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

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

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

Складовими архітектурної моделі керування розподіленими даними є адміністратор розподілення, визначник розподілення, користувач, процесор користувача, контролер розподілення, контролер бази даних, схема для розподілених даних, локальні розподілені дані, схема і база даних. Зв’язок між складо­вими архітектурної моделі керування розподіленими даними подано на рисунку 12.

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

Контролер розподілення — це процесор, який забезпечує послуги керування даними для визначен­ня й доступу до розподілених баз даних разом з послугами, що належать до зв’язаних з ними схем і розподілених даних.

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

Для розподіленої бази даних допускається, що кожна комп’ютерна система має один контролер розподілення.

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

Визначник розподілення є тільки процесором користувача для виклику послуг з доступу до розподілених даних. Інші види процесорів користувача не вимагають ніяких послуг, які явно потребують доступу до розподілених даних, роблячи використання тих самих послуг контролера бази даних визна­ченим для загальної моделі. Контролер розподілення надає додаткові послуги іншим контролерам розподілення при підтримці розподіленого оброблення даних.