Реферат: Системи керування базами даних в цілому їх функції та структура
Транзакція - це послідовність операцій над БД, які розглядаються СКБД як єдине целе. Будь-яку транзакцію, що успішно виконується, СКБД фіксує зміни у БД, у зовнішній пам’яті, або жодна з цих змін ніяк не відбивається на стані БД. Поняття транзакції необходе для підтримки логичної цілісності БД. Якщо згадати наш приклад інформаційної системи відділу кадрів з файлами РОБІТНИКИ та ВІДДІЛИ, тоді єдиним способом не порушити цілісності БД при виконанні операції прийому на роботу нового співробітника буде об’єднання елементарних операцій над файлами РОБІТНИКИ та ВІДДІЛИ в одну транзакцію. Таким чином, підтримка механізму транзакцій є обов’язковою умовою навіть однокористувацької СКБД (якщо, звичайно, така система заслуговує назви СКБД). Набагато суттєвішим є поняття транзакції у СКБД з багатьма користувачами. Та властивість, що кожна транзакція починається при цілісному стані БД і залишає цей стан цілісним після свого завершення, робить дуже зручним використання поняття транзакції як одиниці активності користувача по відношенню до БД. При відповідному керуванні транзакціями, що паралельно виконуються, з боку СКБД кожен користувач може в принципі відчувати себе єдиним користувачем СКБД, якщо не зважати на деяку загальмованість роботи для кожного користувача.
Для керування транзакціями у багатокористувацьких СКБД використовується поняття серіалізації транзакцій і серіального плана виконання суміші транзакцій. Під серіалізацією транзакції, що виконуються паралельно, розуміють таку послідовність планування їх роботы, при якому сумарний ефект суміші транзакцій еквівалентний ефекту їх деякого послідовного виконання.
2.1.4 Журналізація
Одією з основних вимог до СКБД є надійне зберігання даних у зовнішній пам’яті. Під надійністю зберігання розуміють те, що СКБД повинна бути в змозі відновити останній узгоджений стан БД після будь-якої апаратної або програмної відмови. В будь-якому випадку для відновлення БД потрібно володіти деякою додатковою інформацією. Інакше кажучи, забезпечення надійного збереження даних у БД потребуєт надлишкового збереження даних, причому та їх частина, яка використовується для відновлення, повинна зберігатися особливо ретельно. Найбільш поширеним методом збереження такої надлишкової інформації –є ведення журналу змін БД.
Журнал - це особлива частина БД, недоступна користувачам СКБД і підтримується особливо ретельно (деколи підтримується дві копії журналу, які розташовуються на різних фізичних дисках), в яку потрапляють записи про всі зміни основної частини БД.
Серед сучаснихі СКБД на ринку переважають системи побудовані на реляційній моделі даних, так звані реляційні системи. Що мається на увазі під реляційною системою? Нажаль, на даному етапі обговорення важко дати повну відповідь на це запитання. Проте, на основі знань, здобутих на лабораторних роботах можна коротко, але не зовсім точно сказати, що реляційна система даних базується на таких основних принципах:
1. Дані передаються користувачеві у вигляді таблиць (і лише таблиць)
2. Користувачу надаються оператори (напиклад, для вибірки даних), які дозволяють генерувати нові таблиці на основі тих, що вже існують.
Причиною назви такої системи реляційною, полягає в тому, що термін «relation» (відношення, співвідношення), є математичною назвою таблиці
Тепер ми можемо розрізняти реляційні та не реляційні системи за наступними ознаками. Користувач реляційної системи бачить дані у вигляді таблиць і ніяк інакше. Користувач не реляційної системи, навпаки, бачить дані в якихось інших структурах, або не в реляційних таблицях, або поряд з ними. На практиці системи баз даних можна легко розбити на категорії у відповідності зі структурами даних та операторами, які вони надають користувачам. Перш за все, старі (дореляційні системи) можна розділити на три великі категорії: системи інвертованих списків, ієрархічні та мережеві.
До найбільш відомих та типових представників таких систем відносять Datacom/DB компанії Applied Data Research, Inc. (ADR). Вона було орієнтована на використання на машинах основного класу фірми IBM, і Adabas компанії Software AG.
Організація доступу до даних на основі інвертованих списків використовується практично у всіх сучасних реляційних СКБД, але в цих системах користувачі не мають безпосереднього доступу до інвертованих списків (індексів). Загальні правила визначення цілістності БД відсутні.
3. Ієрархічні системи
Типовим представником є Information Management System (IMS) фірми IBM. Перша версія з’явилася у 1968 г. До тепер підтримується багато баз даних, що створює суттєві проблеми з переходом як на нову технологію БД, так і на нову техніку.
Ієрархічна модель дозволяєт створювати бази даних з деревоподібною структурою. У них кожен вузол містить свій тип даних. На верхньому рівні дерева в цій моделі є один вузел – “корінь”, на наступному рівні розташовуються вузли, пов’язані з цим коренем, потім вузлы, пов’язані з вузлами попереднього рівня тощо, причому кожен вузел може мати лише одного попередника (пращура), тобто такі бази підтримують відношення типу "один-до-багатьох".
Рис.2 Ієрархічна деревоподібна структура моделі БД
Маніпулювання даними
Прикладами типових операторів маніпулювання ієрархічно організованими даними можуть бути наступні:
· Знайти вказаний вузол БД (наприклад, відділ 310);
· Перейти від одного вузла до іншого;
· Перейти від одного запису до другого всередині дерева (вузла) (наприклад, від начальника до к первому сотруднику);
· Вставити новий запис на вказану позицію;
· Видалити поточний запис.
Пошук даних в ієрархічній системі завжди починається з кореня. Потім відбувається сходження з одного рівня на інший поки не буде досягнуто шуканий рівень. Переміщення по системі від одного запису до іншого здійснюється за допомогою посилань.
Основні переваги - простота опису ієрархічної структури реального світуа і швидке виконання запитів, які проте, часто містять надлишкові дані. Крім того, не завжди зручно кожен раз починати пошук потрібних даних з кореня, а іншого способу переміщення по базі в ієрархічній структурі немає.
Мережеві системи
Типовий представник: Integrated Database Management System (IDMS) компанії Cullinet Software, Inc., передбчачені для використання на машинах основного класу фірми IBM під керуванням більшості операційн+их систем (70-ті рр.)
Мережеві структури даних