Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекція 2 Середовище БД.doc
Скачиваний:
9
Добавлен:
19.11.2019
Размер:
679.42 Кб
Скачать

2.4.10. Допоміжні служби

СКБД повинна надавати деякий набір різних допоміжних служб. Допоміжні утиліти звичайно призначені для надання допомоги АБД в ефективному адмініструванні бази даних. Одні утиліти працюють на зовнішньому рівні, а тому вони, у принципі, можуть бути створені самими АБД, тоді як інші функціонують на внутрішньому рівні системи і тому повинні бути надані самим розроблювачем СКБД. Нижче приводяться деякі приклади подібних утиліт.

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

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

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

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

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

2.5. Компоненти скбд

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

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

О сновні програмні компоненти середовища СКБД представлені на мал.2.6. На цій схемі також показано, як СКБД взаємодіє з іншими програмними компонентами, наприклад з такими, як користувальницькі запити і методи доступу (тобто методи керування файлами, використовувані при збереженні і витягу записів з даними).

На мал. 2.6 показані наступні програмні компоненти середовища СКБД.

  • Процесор запитів. Це основний компонент СКБД, що перетворить запити в послідовність низькорівневих інструкцій для контролера бази даних.

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

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

  • Препроцесор мови DML. Цей модуль перетворить впроваджені в прикладні програми DML оператори у виклик стандартних функцій базової мови. Для генерації відповідного коду препроцесор мови DML повинний взаємодіяти з процесором запитів.

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

  • Контролер словника. Контролер словника керує доступом до системного каталогу і забезпечує роботу з ним. Системний каталог доступний більшості компонентів СКБД.

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

Контроль прав доступу. Цей модуль перевіряє наявність у даного користувача повноважень для виконання викликаної операції.

Процесор команд. Після перевірки повноважень користувача для виконання викликаної операції керування передається процесору команд.

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

Оптимізатор запитів. Цей модуль визначає оптимальну стратегію виконання запиту.

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

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

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

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

Для втілення бази даних на фізичному рівні крім перерахованих вище модулів потрібні деякі інші структури даних. До них відносяться файли даних і індексів, а також системний каталог. Групою DAFTG (Database Architecture Framework Task Group) була почата спроба стандартизації СКБД, і в 1986 році нею була запропонована деяка еталонна модель. Призначення еталонної моделі полягає у визначенні концептуальних рамок для поділу спроб стандартизації, що починаються, на більш керовані частини і указівки взаємозв'язків між ними на дуже широкому рівні.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]