Базы
данных |
Объектная |
Объектно-реляционная |
Примечания |
Модель данных |
Объектная |
Табличная |
|
Новые типы
данных |
Объектная
база не требует модификации
ядра при добавлении нового
типа данных. Новый класс и его
экземпляры поступают во
внешние структуры базы данных.
Система управления ими не
изменяется |
расширение
типов универсального сервера
(Informix, Oracle) требует
сертификации дополнительных
модулей (datablades, cartridges), их
специального тестирования и
вставки в ядро СУБД. IBM даже
оставляет за собой
исключительное право выпуска
расширений типов СУБД DB/2 |
Постоянные
модификации ядра любой
отлаженной и оптимизированной
СУБД- не самый лучший способ
наращивания функциональных
возможностей пользовательских
приложений |
Язык СУБД и
запросы |
Язык описания
объектов и запросов
унифицирован с базовым языком
программирования, например C++,
SmallTalk, Java. Дополнительно
имеется OQL, являющийся
SQL-подобным, но не полностью
совместимым с SQL2 |
Язык
манипуляции данными ObjectSQL
полностью совместим c SQL2. Все
приложения, использующие SQL для
обмена с базой данных, будут
работать с
объектно-реляционной СУБД |
В ObjectSQL
существенно ограничены
возможности
объектно-ориентированного
программирования. Поскольку
данные новых классов
сохраняются в таблицах,
отсутствует инкапсуляция
данных, затруднено построение
классов потомков
пользовательских |
Оптимизация
ядра СУБД |
Ядра
объектных СУБД изначально
оптимизированы под
использование объектов |
Ядра
объектно-реляционных СУБД
оптимизированы для выполнения
операций над таблицами |
Неясно,
насколько успешно
объектно-реляционные СУБД
справляются с запросами, в
которые включено большое число
пользовательских объектов |