ЗНАЕТЕ ЛИ ВЫ?

Проектування об'єктно-орієнтованих баз даних



 

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

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

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

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

В об'єктно-орієнтованих моделях є зв'язки двох типів:

· посилання між класами;

· наслідування в ієрархії класів.

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

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

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

Процес об'єктно-орієнтованого проектування є ітеративним і послідовним. На рис. 11.1 показана послідовність об'єктно-орієнтованого проектування.

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


 

 

Визначення об'єктів

 

 

Визначення внутрішнього представлення даних, семантичних обмежень і операцій

 

Створення класів на основі схожих об'єктів, реалізація обмежень і операцій за допомогою методів

 

Побудова ієрархії класів за допомогою базових типів даних і розроблених класів

 

Визначення відношень усередені класу (зв'язки атрибут-клас) за допомогою базових типів даних

 

 

Рис. 11.1. Етапи проектування об'єктно-орієнтованої бази даних

 

Приклад.Зв'язок між об'єктами типу1:1представляєтьсяза рахунок додавання посилкових атрибутів у обидва об'єкти (рис. 11.2). Додаткові атрибути посилаються на ідентифікатор об'єкта (OID).

Рис. 11.2. Зв'язок "один до одного"

 

Зв'язок між об'єктами типу 1:M представляється за рахунок додавання посилкового атрибуту в перший об'єкт, який посилається на другий об'єкт, і атрибуту, який містить набір покажчиків на перший об'єкт, в другий об'єкт (рис. 11.3).

 

    ДИСЦИПЛІНА: OID2  
1:M Код: 001  
Назва: бази даних  
     
    Кількість годин: 324  
    Викладач: OID1  
ВИКЛАДАЧ: OID1    
       
       
    ДИСЦИПЛІНА: OID3    
Табельний номер: 231    
  Код: 002    
Прізвище: Тищенко П.П.      
  Назва: штучний інтелект    
Посада: доцент      
  Кількість годин: 162    
Вчений ступінь: к.т.н.      
  Викладач: OID1    
Дисципліна: OID2, OID3, OID4      
       
       
         
    ДИСЦИПЛІНА: OID4    
     
    Код: 003    
    Назва: методи оптимізації    
    Кількість годин: 216    
    Викладач: OID1    
         

 

Рис. 11.3. Зв'язок "один до багатьох"

 

Зв'язок між об'єктами типу N:M представляється за рахунок додавання посилкового атрибуту, який містить набір покажчиків, в кожен об'єкт (рис. 11.4).

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

Об'єктно-орієнтована СУБД повинна відповідати таким вимогам:

· підтримка складних об'єктів;

· підтримка унікальної ідентифікації об'єктів (OID);

· підтримка класів або типів; − підтримка наслідування;

· інкапсуляція об'єктів;

· управління БД;

· забезпечення паралельної роботи декількох користувачів;

· можливість відновлення після перебоїв;

· підтримка запитів до БД на мові високого рівня;

· запис і зчитування даних із зовнішніх пристроїв пам'яті.

 

 

  N:M      
  ДИСЦИПЛІНА: OID2    
       
ВИКЛАДАЧ: OID1  
  Код: 001    
       
   
Табельний номер: 231   Назва: бази даних    
Прізвище: Тищенко П.П.   Кількість годин: 324    
Посада: доцент   Викладач: OID1, OID5    
Вчений ступінь: к.т.н.        
  ДИСЦИПЛІНА: OID3    
Дисципліна: OID2, OID3, OID4      
  Код: 002    
       
    Назва: штучний інтелект    
ВИКЛАДАЧ: OID5   Кількість годин: 162    
    Викладач: OID1, OID5    
Табельний номер: 431      
       
       
Прізвище: Петренко О.А.   ДИСЦИПЛІНА: OID4    
Посада: професор   Код: 003    
Вчений ступінь: д.т.н.   Назва: методи оптимізації    
Дисципліна: OID2, OID3, OID4   Кількість годин: 216    
    Викладач: OID1, OID5    
       
         

 

Рис. 11.4. Зв'язок "багато до багатьох"

 

Питаннями розвитку об'єктно-орієнтованих систем займається OMG (Object Management Group) − робоча група по розвитку стандартів об'єктного програмування. Цією групою розроблена мова UML (Unified Modeling Language), яка використовується для моделювання компонентів БД. Групою OMG також були створені стандарти об'єктів OMA (ObjectManagement Architecture), які допускають взаємодію об'єктів на різних платформах і системах.

До переваг об'єктно-орієнтованих баз даних можна віднести такі:

· можливість включення детальної семантичної інформації в БД;

· можливість розширення базових типів даних, підтримка складних вкладених структур, визначення довільних структур (мультимедіа і т.ін.);

· контроль версій;

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

До недоліків об'єктно-орієнтованих баз даних належить:

· відсутність достатньо проробленої теоретичної бази у об'єктної моделі;

· складність структури;

· навігаційне управління даними, складність додавання атрибутів і методів;

· відсутність стандартної мови запитів.

 





Последнее изменение этой страницы: 2016-07-16; Нарушение авторского права страницы

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