Архітектура бази даних. Фізична і логічна незалежність.

Термінологія в СУБД, та й самі терміни "база даних" і "банк даних" частково

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

У процесі наукових досліджень, присвячених тому, як саме повинна бути

улаштована СУБД, пропонувалися різні способи реалізації. Самим життєздатним з них виявилася запропонована американським комітетом зі стандартизації ANSІ (Amerіcan Natіonal Standards Іnstіtute) трьох-рівнева система організації БД, зображена на мал. 2.1.

1. Рівень зовнішніх моделей - самий верхній рівень, де кожна модель має своє "бачення" даних. Цей рівень визначає точку зору на БД окремих додатків. Кожен додаток бачить і обробляє тільки ті дані, що необхідні саме цьому додаткові. Наприклад, система

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

2. Концептуальний рівень - центральна керуюча ланка, тут база даних представлена в найбільш загальному виді, що поєднує дані, використовувані всіма додатками, що працюють з даною базою даних. Фактично концептуальний рівень відбиває узагальнену модель предметної області (об'єктів реального світу), для якої створювалася база даних. Як будь-яка модель, концептуальна модель відбиває тільки істотні, з погляду обробки, особливості об'єктів реального світу.

3. Фізичний рівень - власне дані, розташовані у файлах або в сторінкових структурах, розташованих на зовнішніх носіях інформації. Ця архітектура дозволяє забезпечити логічну (між рівнями 1 і 2) і фізичну (між рівнями 2 і 3) незалежність при роботі з даними.

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

 

 
 

Рис. 2.1. Трирівнева модель системи керування базою даних

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

Поява нового користувача БД (см. Рис.7.1) з своїми інформаційними потребами і представленням задачі розширює вихідну модель.

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

Поняття "дані" у концепції баз даних - це набір конкретних значень, параметрів, що характеризують об'єкт, умову, ситуацію або будь-які інші фактори. Приклади даних:

 

Петров Микола Степанович, $30 і т.д.

 

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