- •Тема 3. Архітектура субд
- •Тема 3. Архітектура субд 1
- •3.1. Використання та типові складові субд
- •3.1.1. Огляд варіанту структури субд
- •3.1.1.1. Команди мови визначення даних та обробки запитів
- •Обробка запитів
- •3.1.1.2. Процесор запитів
- •3.1.1.3. Збереження файлів на диску
- •3.1.1.4. Менеджери буферів та зберігання даних
- •3.1.1.5. Обробка транзакцій
- •3.1.1.6. Acid - властивості транзакцій
- •3.2. Субд навігаційного типу. Ієрархічні. Сітьові.
- •3.2.1. Навігаційні бази даних
- •3.2.2. Ієрархічні бази даних
- •3.2.2.1. Керуюча частина ієрархічної моделі
- •3.2.2.2. Приклади типових операторів пошуку даних
- •3.2.2.5. Відомі ієрархічні субд
- •3.2.3. Сітьові бази даних
- •3.2.3.1. Керуюча частина мережевої моделі
- •3.2.3.1. Приклади мережевих скбд
- •3.3. Субд реляційного типу.
- •3.3.1. Реляційна база даних
- •3.3.2. Відношення
- •3.3.3. Нормалізація
- •3.4. Об’єктно-орієнтовані бд.
- •3.4.2. Об'єктно-орієнтовані бд
- •3.4.2. Об'єктно-реляційні бд
- •3.4.3. Переваги моделі ообд
- •1. Визначення призначених для користувача абстракцій
- •2. Полегшене проектування деяких зв'язків
- •3. Відсутність потреби у визначенні ключів
- •4. Наявність предикатів порівняння
- •5. Менша потреба в з'єднаннях
- •6. Виграш в продуктивності -?
- •7. Підтримка версій і тривалих транзакцій
- •8. Об'єктна алгебра
- •3.4.4. Недоліки моделі ообд
- •1. Відсутність інтероперабельності між рбд і ообд
- •2. Недостатність засобів для оптимізації запитів
- •3. Відсутність засобів забезпечення запитів
- •4. Відсутність підтримки подань
- •3.4.6. Стандарт odmg.
- •3.4.7. Об'єктні розширення реляційних субд. Мова Sql-3.
- •3.4.8. Об'єктно-реляційні субд
5. Менша потреба в з'єднаннях
В об'єктно-орієнтованих базах даних неявні з'єднання, що породжуються ієрархічною вкладеністю об'єктів, відрізняються від явних об'єднань. Останні нагадують реляційні з'єднання: два об'єкти порівнюються явним чином по значеннях атрибутів або об'єктних ідентифікаторів. Більш того, всі явні з'єднання (засновані на порівнянні значень або ідентифікаторів) не можуть бути виражені на реляційній мові запитів, оскільки в РБД будь-який предикат може містити тільки атомарні атрибути [7].
6. Виграш в продуктивності -?
7. Підтримка версій і тривалих транзакцій
У РБД не підтримуються ні робота з версіями, ні тривалі транзакції. Така підтримка є в деяких ООБД, хоча і з обмеженими можливостями.
8. Об'єктна алгебра
Об'єктна алгебра не так детально розроблена і не є такою ж зрілою, як реляційна алгебра. Але як би там не було, така алгебра існує, і в ній визначаються п'ять фундаментальних операцій, що зберігають об'єкти: union, difference, select, generate і map [1]. На основі цих фундаментальних операцій можуть бути визначені інші операції, наприклад, intersection. Правила перетворень для логічної оптимізації виразів об'єктної алгебри із збереженням еквівалентності виводяться в [2] і [3]. Тоді як операції union, difference і map проводять, головним чином, відображення «один до одного», операції select і generate проводять відображення «один до багатьом». Збереження об'єктів означає, що операції алгебри повертають об'єкти, що належать до раніше визначених класів бази даних, і не створюють нових об'єктів. Оператор union повертає об'єкти, що містяться в множині P або в множині Q, або в обох множинах. Оператора difference повертає набір об'єктів, що належать множині P, але не множині Q. Select повертає підмножину введеної множини. Generate генерує об'єкти з тих, що належать вхідній множині. Map повертає множину об'єктів, що утворюються в результаті кожного застосування послідовності методів.
M. Scholl, H. Schek, «Relational object model». 3rd Int. Conf. On Database Theory, LNCS, vol. 470, Springer Verlag, 1990.
D.D. Straube, M.T. Ozsu, «Queries and query processing in object-oriented database systems». ACM Transactions on Information Systems, Oct. 1990.
D.D. Straube, M.T. Ozsu, «Execution Plan Generation for Object-Oriented Data Model». 2nd Int. Conf. on Deductive and Object-Oriented Databases, Munich, Germany, Dec. 1991.
3.4.4. Недоліки моделі ообд
1. Відсутність інтероперабельності між рбд і ообд
Щоб ООБД змогли зробити значний вплив на ринок баз даних, необхідно виконати ряд умов.
1.Перетворити ООБД на системи баз даних, що володіють достатньою сумісністю з РБД, що повністю оперилися. Потрібний якийсь шлях міграції, щоб забезпечити співіснування тих, що існують нині і нових продуктів, а також плавний перехід від перших до других.
2.Запропонувати засоби розробки додатків і засобу доступу до об'єктно-орієнтованих баз даних.
3.Уніфікувати архітектуру РБД і ООБД.
4.Уніфікувати моделі даних РБД і ООБД.
2. Недостатність засобів для оптимізації запитів
Оптимізацію запитів до ООБД утрудняє додаткова складність самої об'єктно-орієнтірованій моделі даних
