Подходы к построению объектно-реляционных СУБД 


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



ЗНАЕТЕ ЛИ ВЫ?

Подходы к построению объектно-реляционных СУБД



По мнению Стоунбрекера, существует три наиболее вероятных подхода к построению ОРСУБД:

· построить ядро объектно-реляционной СУБД;

· сделать "надстройку" над реляционным ядром;

· сделать "надстройку" над объектно-ориентированным ядром.

Одной из первых попыток создания ОРСУБД является система Postgres (PostIngres). Задачей этого проекта было осуществление ряда целей.

· Предоставление улучшенной поддержки сложных объектов.

· Предоставление пользователям средств расширения типов данных, операторов и методов доступа.

· Предоставление активных функций базы данных (обработчиков предупреждений и триггеров) и поддержка процесса логического вывода.

· Упрощение кода СУБД для восстановления в случае сбоя.

· Создание такого проекта системы, в котором использовались бы все преимущества оптических дисков, многопроцессорных рабочих станций и специализированных VLSI-микропроцессоров.

· Внесение минимального количества изменений в реляционную модель.

Реляционная модель в СУБД Postgres была расширена с помощью включения следующих механизмов:

· абстрактные типы данных;

· данные типа "процедура";

· правила.

Данные механизмы используются для поддержания разнообразных семантических и объектно-ориентированных конструкций моделирования данных, включая:

· агрегацию,

· генерализацию,

· составные объекты,

· атрибуты,

· содержащие ссылки на кортежи в других отношениях

Полученная система должна оставаться реляционной, а значит сохранять преимущества реляционных систем, естественно расширяясь за счет приобретения следующих, в том числе и объектно-ориентированных черт. Это:

· открытая архитектура;

· пользовательские типы данных и функции с наследованием;

· строгое определение типов;

· увеличение быстродействия за счет того, что методы выполняются сервером, а не клиентом;

· улучшенная производительность, вызываемая использованием классов, которые обеспечивают увеличение как скорости разработки приложений, так и их использования;

· восстановление, безопасность и параллелизм на уровне объектов;

· доступность.

Объектно-ориентированные СУБД. Особенности построения моделей СУОБД.

Середина 80-х годов - начало работ над объектно-ориентированными СУБД (ООСУБД)

Цель разработок: обеспечение поддержки приложений систем автоматизированного проектирования (САПР).

В 1989 г. был опубликован Манифест ООСУБД. Согласно Манифесту, ООСУБД должны поддерживать:

· сложные объекты,

· идентифицируемость объектов,

· инкапсуляцию, ведущую к четкому различию между спецификацией и реализацией,

· понятия типа и класса, включая иерархии типов,

· расширяемость,

· вычислительную полноту,

· поддержку языка запросов.

В конце 1993 г. был опубликован стандарт объектных баз данных ODMG-93.

Архитектура СУОБД

ODMG-93 определяет СУОБД как СУБД, интегрирующую свойства БД и объектно-ориентированных языков программирования. В качестве основы объектной модели ODMG-93 используется объектная модель OMG.

Модель данных. Базовыми примитивами являются объекты и литералы. Каждый объект имеет уникальный идентификатор, литерал не имеет идентификатора. Объект, на который можно установить ссылку, называется экземпляром; он хранит определенный набор данных

Состояние объекта определяется набором значений, реализуемых множеством свойств. Этими свойствами могут быть атрибуты объекта или связи между объектом и одним или несколькими другими объектами.

Поведение объекта определяется набором операций, которые могут быть выполнены над объектом или самим объектом. Операции могут иметь список входных и выходных параметров строго определенного типа. Каждая операция может также возвращать типизированный результат.

БД хранит объекты, позволяя совместно использовать их различным пользователям и приложениям. БД основана на схеме данных, определяемой языком определения данных, и содержит экземпляры типов, определенных схемой.

Каждый тип имеет внешнюю спецификацию и одну или несколько реализаций. Спецификация определяет внешние характеристики типа: пользователю для работы с объектом предоставляется набор операций и набор атрибутов объекта, при помощи которых можно работать с реальными экземплярами. Реализация определяет внутреннее содержание объектов, например операции.

Тип также является объектом. Поддерживается иерархия супертипов и подтипов, реализуя стандартный механизм ООП — наследование.

Новые типы данных Особенность ООСУБД состоит в том, что создание нового типа не требует модификации ядра базы и основано на принципах ООП.

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

Поэтому для создания своего типа необходимо:

· унаследовать свойства любого имеющегося типа, наиболее подходящего по своему поведению и состоянию к типу, который требуется получить;

· расширить недостающие операции и атрибуты;

· переопределить, по необходимости, уже имеющиеся

Язык СУБД и запросы

Общепризнанны две группы вариантов языков запросов:

· Первая группа объединяет языки, унаследованные от SQL и представляющие собой разновидность языка OQL (ObjectQueryLanguage), стандартизованного ODMG. Объектно-реляционные СУБД используют различные варианты ограниченных объектных расширений SQL.

· Вторая группа языков запросов базируется на языках группы XML QL, (или XQL). Они могут применяться в качестве языков запросов в объектных и объектно-реляционных БД.

Три главных характеристики:

· целостность,

· масштабируемость

· отказоустойчивость.

Для создания ООСУБД были реализованы несколько проектов, например: ORION, O2 и Cache. ООСУБД полностью поддерживают объектно-ориентированные языки программирования. Разработчики, применяющие C++ или Smalltalk, могут использовать такие преимущества объектной технологии, как наследование, инкапсуляция и полиморфизм



Поделиться:


Последнее изменение этой страницы: 2017-01-25; просмотров: 337; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

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