Министерство образования РФ
Удмуртский государственный университет
Физический факультет
Кафедра высшей математики
РЕФЕРАТ
На тему: «Объектно-ориентированные СУБД»
Выполнил: студент гр. 38-41
Проверил:
Ижевск, 2004
Предпосылки появления ООСУБД | 3 |
Консорциум ODMG и направления его деятельности | 4 |
Стандарт ODMG-93 | 6 |
Стандарт ODMG 2.0 | 7 |
Стандарт ODMG 3.0 | 9 |
Поставщики ООСУБД | 10 |
Особенности ООСУБД Cache' | 12 |
Основные компоненты СУБД Cache' | 12 |
Средства администрирования Cache' | 17 |
Инструментальные средства разработки приложений в СУБД Cache' | 18 |
Версии системы и поддерживаемые платформы | 23 |
Заключение | 27 |
Приложение | 28 |
Список литературы | 34 |
Содержание
Предпосылки появления ООСУБД
В 80-е гг. практически установилась безраздельная монополия реляционных систем баз данных. Однако еще в середине 70-х гг. начали рождаться новые идеи, которые привели впоследствии к формированию объектного подхода в технологиях баз данных.
Активные исследования в области языков программирования в конце 60-х — начале 70-х гг., связанные с типизацией данных, привели к формированию концепции абстрактного типа данных, которая нашла конструктивное воплощение в разработанных в это время исследовательских языках программирования — CLU, Alphard и др. Обогащенная идеями наследования, полиморфизма и инкапсуляции реализации, эта концепция трансформировалась впоследствии в подход, который и стал называться объектным. Получил распространение созданный еще в 1972 г. в компании Xerox PARC объектный язык Smalltalk. А после опубликования в 1983 г. Б. Строустрапом (В. Stroustrup) в AT&T Bell Laboratories языка C++, объектного расширения уже к тому времени весьма популярного языка С, и систем программирования, реализующих этот язык на платформе ПК, программирование в объектной парадигме стало массовым явлением.
Эта ситуация в значительной мере пробудила интерес к воплощению объектной парадигмы в технологиях баз данных. Проблема состояла прежде всего в том, что возникла необходимость в обеспечении эффективной среды хранения объектных данных для поддержки многочисленных прикладных программных систем, реализованных средствами объектных языков. Эту функцию было естественно возложить на СУБД, основанные на объектных моделях данных и обладающие интерфейсами прикладного программирования (API) для объектных языков.
Вместе с тем попытки применения объектных СУБД наиболее притязательными пользователями были связаны также со сложившимся к этому времени пониманием неэффективности использования реляционных систем в целом ряде нетрадиционных приложений. Многие из таких приложений нуждались в более богатых по сравнению с предоставляемыми реляционными СУБД средствах моделирования предметной области с более развитыми системой типов и возможностями структурирования данных, обеспечивающих во многих случаях более естественное отображение семантики предметной области в базах данных.
Наконец, создание СУБД, основанных на объектной парадигме моделирования данных, позволяло преодолеть еще одну застарелую болезнь традиционных технологий баз данных — несоответствие импеданса: несоответствие типов данных, которые предусмотрены в языке прикладного программирования и в модели данных, поддерживаемой СУБД. Эта проблема, пожалуй, не возникала лишь для приложений СУБД типа CODASYL, реализованных в языке COBOL, поскольку запись базы данных в модели данных CODASYL строилась но образу и подобию записи в этом языке программирования. Но проблема несоответствия импеданса возникла и для СУБД этой категории, когда впоследствии потребовалось обеспечить их средствами API для языков PL/I и FORTRAN.
Весьма привлекательной особенностью объектных СУБД, которые с самого начала предусматривали API для объектных языков программирования, было полное отсутствие указанной проблемы.
Дополнительный стимул развитию объектных технологий баз данных и развертыванию индустрии объектных СУБД придала публикация в гг. двух программных документов, подготовленных группами известных специалистов в области баз данных.
В первом из них — Манифесте объектно-ориентированных баз данных — были сформулированы важнейшие требования к СУБД рассматриваемого класса и высказывалось мнение о целесообразности непосредственного, с "чистого листа", а не эволюционного перехода к новым объектным технологиям. Второй документ, названный Манифестом систем баз данных третьего поколения, опубликован годом позднее. В нем подчеркивается, что доминирующие в разработках приложений реляционные СУБД не удовлетворяют потребностям многих важных нетрадиционных сфер применения, и нужны новые подходы к управлению данными. Однако в отличие от первого документа в этом документе декларируется необходимость обеспечения преемственности с существующими реляционными технологиями и эволюционного пути их развития, в частности, за счет поддержки возможностей объектного подхода в реляционных СУБД.
Вместе с тем активизация объектного направления в технологиях баз данных в значительной мере стимулировалась также значительным прогрессом в развитии общей объектной инфраструктуры. Здесь важную роль играли деятельность Object Management Group (OMG) по разработке стандартов, обеспечивающих возможности создания распределенных неоднородных интероперабельных объектных сред, активизация работ по стандартизации в области объектного анализа и проектирования, в том числе средств моделирования метаданных и обмена метаданными между различными системами.
Консорциум ODMG и направления его деятельности
Развитие производства ряда коммерческих объектно-ориентированных СУБД выдвинуло на повестку дня в начале 90-х гг. вопрос о необходимости стандартизации модели данных и языковых средств для таких систем с тем, чтобы обеспечить переносимость приложений между средами различных объектных СУБД, а также их интероперабельность. Именно с целью организации практической деятельности по созданию стандартов для объектных систем баз данных в июне 1991 г. был учрежден индустриальный консорциум Object Database Management Group (ODMG), который объединил всех ведущих поставщиков объектных СУБД и стал "законодателем мод" в этой области.
В качестве исходной платформы для разработки своего стандарта объектных СУБД консорциум ODMG использовал:
• Манифест систем объектно-ориентированных баз данных, в котором были определены основные свойства ООСУБД;
• объектную модель и язык определения интерфейсов (IDL) стандарта OMG CORBA 1.0, обеспечивающего создание распределенных неоднородных интероперабельных объектных сред;
• проект стандарта SQL2 (в этот период завершались работы над SQL-92).
Главные требования к разрабатываемому ODMG стандарту заключались в обеспечении переносимости приложений между средами различных ООСУБД и интероперабелъности с архитектурой CORBA. В августе 1993 г. консорциум опубликовал первую версию стандарта — ODMG-93 Release 1.0. В ней содержались спецификации объектной модели, языка определения объектов, объектного языка запросов и связывания для объектных языков программирования Smalltalk и C++. При этом объектная модель ODMG представляла собой расширение модели-ядра стандарта OMG CORBA, а язык определения объектов ODL — соответственно расширение языка определения интерфейсов OMG IDL, Благодаря этому обеспечивалась естественная возможность интеграции систем баз данных, основанных на стандарте ODMG, в среду объектных технологий CORBA. Язык запросов OQL в стандарте явился результатом адаптации некоторого фрагмента языка SQL к объектной модели ODMG.
С их появлением спецификации ODMG-93 сразу же приобрели статус стандарта де-факто, поскольку в их создании участвовали все ведущие производители объектных СУБД, которые поддерживали этот стандарт собственными программными продуктами.
В последующие годы появились промежуточная версия стандарта ODMG Release 1.1 (февраль 1994 г.) и одобренная в ноябре 1995 г. версия ODMG Release 1.2.
Следующая существенно дополненная с функциональной точки зрения версия стандарта — ODMG 2.0 была принята в июле 1997 г. К сожалению, в результате заключительного редактирования в ней появился ряд некорректностей, связанных с описанием базовой объектной модели стандарта, которые привели к ее рассогласованию с языковыми спецификациями. Это не помешало, однако, некоторым поставщикам объектных СУБД активно реализовать ряд программных продуктов СУБД, основанных на данной версии стандарта.
Завершив этап своей деятельности, связанной с созданием версии стандарта ODMG 2.0, консорциум существенно изменил стратегию и содержание работ. В пресс-релизе от 27 апреля 1998 г. ODMG объявила о расширении сферы своей деятельности. Наряду с поддержкой и развитием имеющегося стандарта предполагалось сосредоточить усилия на разработке спецификаций стандартов «универсального хранения объектов» для различных объектных языков программирования. По мнению руководства ODMG, неотложная необходимость в этом вызвана, прежде всего, появлением и широким распространением языка Java. Создание и использование таких стандартов позволили бы исключить потребность в средствах отображения объектов языков программирования в различные форматы хранения, облегчить перенос приложений из среды одного продукта, соответствующего стандарту ODMG, в среду другого такого же продукта.
Стремясь подчеркнуть, что новая поставленная задача будет весьма значимой в деятельности ODMG и что она важна не только в рамках систем баз данных, консорциум Object Database Management Group объявил об изменении своего названия. Теперь (с апреля 1998 г.) аббревиатура ODMG расшифровывается как Object Data Management Group.
Для реализации своих намерений в указанном направлении ODMG начал в 1998 г. тесно сотрудничать с компаниями Sun, Novell и Secant Technologies с целью выработки спецификаций сервиса OMG долговременно хранимых объектов версии 2 (OMG Persistent State Service 2.0). Эти спецификации были представлены в OMG в качестве претендента на новый стандарт одного из 16 объектных сервисов, входящих в состав разработанной консорциумом архитектуры CORBA.
В составе ODMG были учреждены три новые рабочие группы. Одна из них должна была обеспечить интеграцию спецификаций сервиса долговременного хранения объектов будущего стандарта ODMG с разрабатываемой компанией Sun новой спецификацией ее компонентной модели Enterprise JavaBeans (EJB 2.0). На две другие рабочие группы возлагались задачи разработки стандартного отображения между объектной и реляционной моделями данных, а также связывания для среды, основанной на новом языке разметки XML. Начались также работы по созданию средств сертификации для реализации предложенной ODMG спецификации связывания для Java, которые предполагалось включить в следующую версию стандарта.
Важно заметить, что ODMG предложила сообществу Java использовать спецификации связывания Java из стандарта ODMG как основу начавшегося процесса разработки спецификаций Java Data Object Specification (JDO). Речь идет о создании для Java спецификаций нового API высокого уровня, который позволял бы программисту полностью обходиться средствами Java и не обращаться к механизмам других языков, например к SQL, в случае использования части 1 SQLJ. При этом предполагается обеспечить прозрачность обращений к базе данных для доступа к долговременно хранимым объектам, транзакционную семантику для обработки объектов такого рода, а также интерпретацию данных реляционных баз данных как объектов Java и другие возможности.
Развивая новые направления своей расширенной сферы деятельности, ODMG вместе с тем продолжал работу над следующей версией поддерживаемого консорциумом стандарта — ODMG 3.0. Работа была завершена в конце 1999 г., а в январе 2000 г. этот стандарт был опубликован издательством Morgan Kaufmann Publishers под названием The Object Data Standard: ODMG 3.0. Это название в большей мере соответствует новой миссии ODMG, чем прежнее (Object Database Standard).
В отличие от предыдущих версий стандарта ODMG не публиковала проект ODMG 3.0 на своем Web-сайте для свободного предварительного ознакомления с ним заинтересованных специалистов.
Далее рассматриваются опубликованные ODMG версии стандартов для объектных баз данных. Перед этим необходимо коснуться важного вопроса о подходе ODMG к оценке соответствия программных продуктов стандартам консорциума.
Нужно здесь отметить, что ODMG решает этот вопрос нетрадиционным образом. Во-первых, предлагается дифференцированно оценивать соответствие продуктов отдельным компонентам стандарта. При этом различаются два понятия — «ODMG х-сертифицированный» (ODMG x-certified) продукт и «ODMG х-соответствующий» (ODMG x-compliant) продукт, где х означает один из компонентов стандарта ODMG (ODL, OQL, связывание для языков C++, Smalltalk и Java). Первое понятие означает, что рассматриваемый программный продукт удовлетворяет всему набору разработанных ODMG тестов сертификации для компонента х рассматриваемого стандарта. Вторая характеристика понимается для ODL и OQL как синоним х-сертифицированности продукта. Что же касается компонентов стандарта, определяющих связывания для языков программирования, то в этом случае для присваивания продукту характеристики "ODMG х-соответствующий" достаточно, чтобы тестам удовлетворяло хотя бы подмножество спецификаций связывания (ODL, OML или OQL) для этого языка программирования.
Наряду с указанными выше оценками соответствия стандарту ODMG предлагается также использовать характеристику "ODMG-соответствующий" для продуктов, которые являются "ODMG х-соответствующими" для одного или более компонентов х стандарта консорциума.
Заметим, что никакой информации о существе указанных тестов, способе их получения и о процедуре сертификации ODMG не сообщает.
В настоящее время на Web-сайте ODMG представлен список программных продуктов, соответствующих стандарту ODMG (ODMG-compliant). К ним относятся системы: Jasmine (Computer Associates), JYD Object Database (JYD Software Engineering), TITANIUM (Micro Data Base Systems, Inc.), несколько версий ООСУБД ObjectStore (Object Design), BSF (Objectmatter), несколько продуктов линии Objectivity (компания Objectivity) и линии Orient (компания Orient), ряд продуктов компаний РОЕТ и Versant Corporation, а также продукты JavaBlend (Sun Microsystems) и EyeDB (Sysra Informatique). При этом указывается, каким компонентам стандарта каждый из этих продуктов соответствует. Однако только для связывания Java указывается версия стандарта (ODMG 2.0). В остальных случаях сведения о версии умалчиваются.
Стандарт ODMG-93
ODMG-93 — это первый разработанный консорциумом стандарт для объектных СУБД. Он был опубликован в 1994 г. издательством Morgan Kaufmann Publishers (США), которое впоследствии стало постоянным издателем спецификаций стандартов ODMG.
Главные требования, которые определяли характер этого стандарта, заключались в обеспечении переносимости приложений относительно различных ООСУБД, а также в интероперабельности с архитектурой CORBA. По замыслу авторов стандарт должен был интегрировать концепции объектной модели OMG, языка баз данных SQL и объектно-ориентированных языков программирования, таких, как C++, и опираться на результаты деятельности по стандартизации в каждом из этих направлений.
Основными компонентами стандарта ODMG-93 являются:
• объектная модель, которую, как предполагается, должны поддерживать ООСУБД;
• опирающийся на эту модель язык определения объектов ODL;
• основанный на этой модели и на языке SQL объектный язык запросов OQL;
• языки манипулирования данными (Object Manipulation Language — OML) для различных включающих языков, представляющие собой, по существу, отображения объектной модели ODMG в объектно-ориентированные языки программирования Smalltalk и C++ (эти отображения называют часто связываниями для соответствующих языков программирования). Объектная модель ODMG представляет собой профиль объектной модели OMG, расширяющий ее некоторыми важными возможностями, необходимыми для баз данных, прежде всего типами-коллекциями и бинарными связями между типами. Более подробно мы обсудим объектную модель ODMG при рассмотрении стандарта ODMG 2.0, поскольку она подверглась значительным изменениям в этой версии стандарта.
В силу того что объектная модель ODMG, как уже говорилось, является расширением объектной модели OMG, язык ODL является, по существу, расширением языка определения интерфейсов стандарта CORBA. Это обстоятельство обеспечивает возможность естественного погружения объектных систем баз данных, основанных на стандарте ODMG, в технологии CORBA.
Стандарт ODMG, в свою очередь, оказывает влияние на деятельность OMG. В частности, он учитывался при разработке объектных сервисов в рамках архитектуры OMG. После опубликования стандарта ODMG-93 работы по его развитию продолжались. До 2000г. действующей являлась версия стандарта ODMG 2.0. В январе 2000 г. ODMG опубликовала новую версию своего стандарта объектных данных — ODMG 3.0.
Стандарт ODMG 2.0
Эта версия стандарта, названного стандартом объектных баз данных, была принята ODMG в июле 1997 г. Она представляет собой существенным образом пересмотренные, доработанные и расширенные спецификации версии ODMG-93. Появлению ODMG 2.0, как уже указывалось, предшествовали два промежуточных шага — публикация версий стандарта ODMG 1.1 и ODMG 1.2.
В спецификации стандарта ODMG 2.0, прежде всего, включено новое, уточненное и расширенное описание объектной модели, которое содержит ряд существенных дефектов, отсутствовавших в проекте стандарта и появившихся уже на стадии подготовки спецификаций к публикации.
Как уже отмечалось, объектная модель, на которой базируется стандарт ODMG (все его версии), является расширением объектной модели OMG. Благодаря этому становится возможным естественное погружение системы базы данных, основанной на стандарте ODMG, в архитектуру OMG CORBA.
В отличие от модели OMG в ней допускаются два вида примитивов моделирования — объекты и литералы, называемые в ранних версиях стандарта соответственно изменчивыми и неизменчивыми типами.
Примитивы обоих этих видов могут быть как атомарными, так и коллекциями. Каждый объект имеет уникальный идентификатор, неизменный в течение всего срока его существования. Литералы не имеют уникальных идентификаторов. Они являются самоидентифицируемыми. Объекты и литералы обладают типами. В отличие от объектной модели OMG между типами могут устанавливаться бинарные связи.
Состояние элементов данного типа определяется соответствующими им значениями его свойств (общих для всего типа) — атрибутов или бинарных связей с экземплярами других типов. Поведение экземпляров типа определяется набором операций, задаваемых их сигнатурами, и этот набор также является общим для всех экземпляров данного типа. Для интерфейса может иметься несколько реализации. Типы в объектной модели ODMG сами являются объектами и имеют собственные свойства — список супертипов данного типа, экстент — множество экземпляров данного типа в базе данных, а также ключ — факультативное свойство, обеспечивающее возможность идентификации экземпляров типа значениями заданного набора свойств объекта.
Помимо объектных типов-интерфейсов, являющихся абстрактными типами (они не могут порождать экземпляров), в модели предусматриваются также объектные типы-классы, которые могут порождать экземпляры. Между классами может устанавливаться транзитивное бинарное отношение простого наследования, обозначаемого в синтаксисе языка определения объектов (ODL) ключевым словом EXTENDS. Свойства типов-интерфейсов могут наследоваться другими интерфейсами и классами. В то же время интерфейсы не могут наследовать от классов.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 |


