Об’єктно-орієнтовані бази даних 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Об’єктно-орієнтовані бази даних



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

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

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

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

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

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

Об’єктно-реляційні бази даних

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

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

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

Етапи розроблення баз даних

 

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

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

· предметну область;

· модель предметної області;

· інфологічну модель даних;

· даталогічну модель даних;

· фізичну модель даних;

· власне базу даних і додатки.

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

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

Інфологічна модель даних. На наступному, нижчому, рівні знаходиться інфологічна модель даних предметної області. Інфологічна модель описує поняття предметної області, їх взаємозв'язок, а також обмеження на дані, що накладаються предметною областю. Приклади понять - "тип вагона", "кількість місць", "номер потяга", "сполучення". Приклади взаємозв'язків між поняттями - "для даного типу вагона характерна певна кількість місць", "один і той самий потяг зупиняється на декількох проміжних станціях”. Інфологічна модель даних є початковим прототипом майбутньої бази даних. Основним засобом розроблення інфологічної моделі даних зараз є різні варіанти ER-діаграм (Entity-Relationship, діаграми сутність-зв'язок).

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

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

Потрібні дані відшукуються СУБД на зовнішніх запам'ятовуючих пристроях за фізичн ою модел лю даних.

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



Поделиться:


Последнее изменение этой страницы: 2021-12-15; просмотров: 63; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.22.181.81 (0.005 с.)