Сайт Информационных Технологий

3.2. Обозрение рынка СУООБД

По соображениям совместимости с прежними наработками, лидеры индустрии СУБД предлагают смешанный подход - объектно-реляционный. Каждая уважающая себя фирма обратилась лицом к объектным технологиям и продуктивно сотрудничает с разработчиками объектно-ориентированных СУБД. IBM и Oracle радикально подошли к проблеме и сейчас переработали ядра своих СУБД (соответственно, DB2 и ORACLE) с целью добавить в него объектные свойства. Другой путь выбрал Informix, который приобрел серьезную объектно-реляционную СУБД Illustra и встроил ее в свои продукты. В результате получился продукт, именующийся универсальным сервером. Еще один гигант рынка- Computer Associates, поступил иначе. Он сделал ставку на объектную базу Jasmine, активно пропагандируя ее достоинства. О Computer Associates следует сказать несколько слов особо. Его пример иллюстрирует противоречивую ситуацию, сложившуюся на стыке объектных языков программирования и современных средств хранения данных. Несколько лет назад компания CA выпустила удачную реляционную СУБД Ingres с возможностью добавления сложных типов данных - предтечу нынешних универсальных серверов. Естественно, эта СУБД имеет интерфейс с объектными языками. Однако, как известно, в 1996 году Computer Associates приобрела Jasmine (разработку лаборатории фирмы Fujitsu) и теперь активно продвигает ее на рынок. Очевидно, что языки, поддерживающие сложные структуры данных, требуют адекватной модели базы данных (Рис. 3.2). Несмотря на существование объектных дополнений и возможностей расширения, например, у универсального сервера Informix, ядро базы остается ориентированным на работу с реляционными данными, что отрицательно сказывается на производительности, вынуждая СУБД всякий раз производить сборку/разборку объектов при обмене с хранилищем.

Рис. 3.2. Иллюстрация представления объектов в реляционной и объектной СУБД

Мэри Лумис, один из идеологов СУБД Versant, в свое время очень кратко и точно сформулировала актуальность объектного подхода к базам данных: "Модель данных более близка сущностям реального мира. Объекты можно сохранить и использовать непосредственно, не раскладывая их по таблицам. Типы данных определяются разработчиком и не ограничены набором предопределенных типов". В объектных СУБД данные объекта, а также его методы помещаются в хранилище как единое целое. Объектная СУБД именно то средство, которое обеспечивает запись объектов в базу данных "как есть". "Все, что Вы запрограммировали, Вы помещаете в базу данных" - вот девиз такой СУБД.

Объектная база данных обеспечивает доступ к различным источникам данных. В том числе, конечно, и к данным реляционных СУБД, а также разнообразные средства манипуляции с объектами базы данных (Рис. 3.3). Как правило, это и интерфейсы СУБД с объектными языками программирования C++, Java, Smalltalk, и набор ActiveX-элементов (модулей, воспринимающих высокоуровневые команды от приложений VisualBasic, Delphi и т. д.), которые разработчик может использовать в своей программе для работы с СУБД. Через драйвер ODBC (Open Database Connectivity - драйвер доступа к базам данных) к данным объектной базы получают доступ программы, использующие структурированный язык запросов SQL. Если такая СУБД имеет ORB-модуль (ORB - Object Request Broker - брокер объектных запросов - средство взаимодействия объектных приложений по протоколу CORBA - Common Object Request Brokers Architecture - общая архитектура брокеров объектных запросов), то для ее объектов открывается путь в сети, в том числе и в Интернет.

Рис. 3.3. Источники данных для объектной СУБД

Хорошо известно, что в современном мире без стандартов затруднено развитие технологий и привлечение разработчиков приложений. Не исключение и технологии объектных СУБД. Поэтому ведущие разработчики объектных СУБД в 1992 году образовали группу Object Database Management Group (ODMG) по согласованию и выработке стандартов. Специфика ODMG в том, что им вырабатываются не совершенно новые стандарты, а расширения существующих стандартов OMG (Object Management Group - группа выработки стандартов объектного программирования), ANSI, а также порядок их использования с целью совместимости конечных прикладных программ с интерфейсом любой объектной СУБД. К настоящему времени выработаны стандарты объектной модели данных, языка описания объектов (ODL - Object Definition Language), языка запросов (OQL - Object Query Language), дополнения языков программирования C++, Smalltalk, Java.

В табл. 3.1 приведена информация об объектных базах, включающая сведения о языках разработки, поддерживаемых платформах, а также те сферы деятельности, в которых они добились наибольшего успеха. В обозрение не включены объектно-реляционные базы данных, такие как Informix Universal Server (компания Informix), Universal Database DB2 (компания IBM), ORACLE 8.0 (компания ORACLE). Безусловно, это мощные системы с большим потенциалом, но объектность не заложена в самой их "природе" - это надстройка над реляционным ядром. Думается, что в последующих версиях поддержка объектов будет встроена в ядро этих СУБД, тогда их с полным правом можно будет называть объектно-ориентированными базами данных.

Таблица 3.1

Компания-разработчик Название СУБД,
номер последней версии
Поддер-живаемые языки Платформы Области применения
Objectivity/DB

www.objy.

com

Objectivity 5.0 C++, Java, Smalltalk DEC, Sun4/SPARC, VAX, HP 9000, IBM RISC System/6000, Silicon Graphics, NCR System. Моделирование, САПР, обработка изображений, физика
ONTOS, Inc

www.ontos.

com

ONTOS DB 2.5 C++, VisualBasic, Java IBM RISC System/6000, IBM PC, HP 9000, SCO 386, Sun4/SPARC. САПР, управление производством
Versant Object Technology

www.versant.

com

Versant, Release 5 C++, Java, Small-talk Sun4/SPARC, IBM RISC System/6000, HP 9000, DEC, Sequent, IBM PC, Silicon Graphics, NeXT. Моделирование, САПР, обработка изображений, имитационное моделирование
ObjectDesign, Inc.

Www.odi.com

ObjectStore, 5.0 C++, Java Sun, HP, DEC, NCR, Univel, Olivetti, IBM RISC System/6000, Silicon Graphics, IBM PC. Моделирование, САПР, CASE, обработка изображений
Gemstone, Inc.

Www.gemstone.com

Gemstone, 5.0 Small-talk, Java Sun4/SPARC, IBM RISC System/6000, HP 9000, DEC, Sequent. Моделирование, САПР, CASE, телекоммуникации
POET Software GmbH

www.poet.com

POET, 5.0 C++, Java, VisualBasic Windows NT 3.51, Os/2 Warp, Novell Netware, Macintosh 68K, PowerPC, Sun Solaris, HP-UX, IBM AIX, SCO, SGI IRIX 5.3 Управление производством, автоматизация офисной деятельности
        Продолжение табл 3.1
Ardent Software; www. o2tech.com O2, 5.0 C++, Java, Smalltalk Нет данных Моделирование, САПР, CASE, управление производством, телекоммуникации
Ibex Computing, Inc

www.iprolink.

com\

ibexcom

Itasca, 5.0 Lisp, CLOS, C++, C HP-UX, Sun Solaris,, Windows NT 4.0, Digital UNIX, SGI, AIX, клиентская часть в Windows 95, Windows NT Моделирование, САПР, телекоммуникации,
Computer Associates , Inc.

www.cai.com

Jasmine, 1.1 C++, C, Java, VisualBasic Sun Solaris, HP-UX, DEC, IBM RISC System/6000,
Windows NT 4.0
Обработка изображений, телекоммуникации, электронная коммерция
InterSystems Cache C++, C, Java, VisualBasic HP-UX, Sun Solaris,, Windows NT, Digital UNIX, SGI, AIX, Windows 95,98, IBM RISC System/6000, Silicon Graphics, IBM PC, DEC, AViiON Управление производством, автоматизация офисной деятельности

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

При рассмотрении СУБД как составной части ИСУ важным является вопрос выбора языка управления или создания и сопровождения объектов в информационной базе. Подходы к организации языков программирования при работе с перечисленными выше СУБД, не дают ответа на вопрос о том, существует ли в управлении сколь-нибудь сложный объект, стабильный по своей структуре и свойствам, необходимым для того, чтобы можно было в полной мере применять тот или иной язык? Всегда можно предложить модель – выделенную ситуацию рассмотрения объекта как стабильного образования, не связанного с внешним миром или не изменяющегося под его воздействием. В общем же случае структура объекта находится в состоянии непрерывного изменения, связанного как с физической стороной его существования, так и с изменением целей, задач и “точки взгляда” на этот объект со стороны управляющей системы – субъекта управления. Требованием к языку управления даже и для интеллектуализированного подхода является даже не столько его объектная ориентированность, сколько автоматическая адаптация построений на том или ином языке к изменяющейся структуре объекта. Такой язык давно существует и достаточно широко используется во всем мире. Этот язык, ранее известный под названием mumps (M,диамс), ныне существует как инструментальная система информационной “Cache-технологии” компании InterSystems Corporetion. В связи с тем, что языки, ориентированные на структуры объектов, должны являться одновременно и базами, а Cache-технология является именно таким сочетанием, обратимся к этой СУБД, получившей название постреляционной базы данных.


Site of Information Technologies
Designed by  inftech@webservis.ru.