Фізична організація бд

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

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

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

Одна з внутрішніх моделей буде оптимальна. В якості критеріїв оптимальності використовуються мінімальний час відповіді системи, мінімальний обсяг, мінімальні витрати на БД і ін. Основними засобами фізичного моделювання в БД є:

§ структура зберігання даних;

§ мову опису даних.

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

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

2) Організація, що поєднує структуру зберігання даних з однієї або декількома пошуковими структурами.

Кінцевим разом розробки фізичної організації БД є файли даних - файли БД і файли пошукових структур. З безлічі типів пошукових структур СУБД на ПК найчастіше використовуються лінійні і ланцюгові списки, інвертують і індексні файли.

Мал. 19. Графічне представлення ланцюгового списку.

КС - кінець списку

ФС - фіксатор списку

4 - кількість елементів.

Мал. 20. Табличне представлення ланцюгового списку.

У записі можна передбачити будь-яке потрібне додаткове ознакування міста k, і, отже, мати k варіантів вибірки записів в файлі. Ланцюгові списки найбільш зручні для подання у зовнішній пам'яті мережевий моделі даних.

В БД, як правило, записи впорядковані по одному з полів (основному ключу), що дозволяє скоротити перебір записів при читанні файлу БД. Для зменшення часу пошуку даних по не ключовим полях створюються інвертовані файли.

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

Мал. 21. Процес инвертирования файлу.

Тут приведена БД в складі основного файлу, де записи впорядковані по ключовому полю «Прізвище», і інвертованого файлу, записи якого впорядковані по які ключовому полю «Рік» основного файлу. При введенні запиту «Знайти співробітника з роком народження менше 1970» пошук даних необхідно вести не в основному порядку, де буде потрібно повний перебір записів, а в інвертованому файлі, в якому для цього прикладу досить прочитати перші 2 записи.

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

Файл БД, для обробки якого використовується хоча б один індекс, називається індексованих файлом. Побудова індексу виконується автоматично самої СУБД.

Мал. 22. Процес побудови індексу.

Таким чином, БД може включати один основний і кілька допоміжних файлів.

Схожі статті