Обзор

 

Модули DataBlade в Informix Universal Server вдыхают новую жизнь в модель БД

 

Как правило, забег выигрывает не самый быстрый, а самый упорный, однако и поспешность компании Informix Software (Менло-Парк, шт. Калифорния) в поставках может сыграть положительную роль в случае с радикально новым Universal Server.

 

В конце февраля Тестовый центр PC Week провел экспертную оценку Informix Universal Server  -  СУБД нового поколения, сочетающей проверенную реляционную технологию и сверхсовременную расширяемость.

 

Наши тесты показали, что, стремясь обойти своего основного соперника  -  корпорацию Oracle, Informix при создании Universal Server срезала углы везде, где могла: остались недочеты и в стратегии репликации, и в шлюзе СУБД, и в массовом загрузчике, и в средствах резервного копирования и управления.

 

Тем не менее мы считаем, что новая технология подключаемых модулей DataBlade, примененная в продукте, вдыхает новую жизнь в изрядно потертую реляционную модель и делает Universal Server привлекательным, несмотря на имеющиеся недостатки в серверных утилитах.

 

Наращивание возможностей СУБД с помощью DataBlade  -  программных модулей, которые подключаются к Informix Universal Server и позволяют пользователям хранить, извлекать, обновлять и обрабатывать данные мультимедиа и специфических пользовательских типов,  -  существенно поднимает статус этой базы данных.

 

Informix Universal Server уже успел породить бурно растущий рынок третьих фирм: за два месяца, прошедших со времени выхода этого продукта, в продажу поступили 28 модулей DataBlade и только четыре из них произведены самой Informix. Во многом сходные с драйверами устройств, модули DataBlade имеют низкоуровневый системный доступ, поэтому могут работать с очень высокой скоростью.

 

Напрашивается мысль, что такой подход влияет на общую стабильность СУБД. Но только горький практический опыт сможет подтвердить это мнение. Мы же тщательно испытали архитектуру Informix и считаем, что компания обезопасила свои базы данных при помощи отслеживания ошибок, функций инкапсуляции DataBlade, программы обработки ошибок из ядра СУБД и строгой сертификации.

 

Типов данных не бывает слишком много

 

Хотя расширяемость, возможная при использовании DataBlade, уникальна для Informix, хранилище для мультимедиа-данных вовсе не является новинкой.

Включенный в поставку Informix Universal Server модуль Web DataBlade обеспечивает простое администрирование Web благодаря несложному, но эффективному интерфейсу браузера

 

Oracle тоже обеспечивает поддержку популярных типов данных сложной структуры  -  таких, как документы Web, текст и многомерные данные,  -  в Oracle Universal Server, основанном на СУБД Oracle. Кроме того, многие имеющиеся серверы сложных типов данных Oracle работают на Oracle Parallel Server  -  рекорд, побить который Informix не сможет, пока не объединит свою СУБД XPS с параллельной обработкой непонятно чего и с Informix Universal Server. Исполнительный директор Informix Фил Уайт считает, что по крайней мере в ближайшие полтора года этого не случится.

 

Ожидается, что намеченная к скорому выходу DB2 Universal Edition корпорации IBM будет иметь многие из преимуществ модулей Informix DataBlade в аналогичных User Defined Functions и User Defined Types (функции и типы данных, задаваемые пользователем) самой IBM, а благодаря распределенной архитектуре, которая применяется и в Oracle Parallel Server, и в XPS компании Informix, продукт достигнет небывало высокой производительности.

 

Хотя Informix именует Universal Server “объектно-реляционным”, этот продукт не имеет качеств, каких мы могли бы ожидать от такой системы. Universal Server не поддерживает множественного наследования, переопределения операторов или ключевых для объектно-ориентированных СУБД идентификаторов объектов. Чтобы, к примеру, организовать поиск в таблице, нам пришлось использовать сложные вложенные реляционные блоки.

 

Тем не менее Informix Universal Server все еще предпринимает правильные шаги к объектно-ориентированной цели. В нем поддерживаются такие типы, как поименованные строки и таблицы, единичное наследование для типов и таблиц и полиморфические функции.

 

В наших тестах эти возможности удалось применить с помощью языка SQL сервера Informix, базирующегося на стандарте SQL3.

 

Администраторы, знакомые с семейством СУБД Informix Online, будут чувствовать себя как дома при работе с Universal Server: инструментальные оболочки доступа к базе данных DB Access и наблюдения Monitor в Universal Server работают так же, как в Informix Online. Расширения для управления новыми функциями, такими, как DataBlade и интеллектуальные BLOB (большие двоичные объекты), добавлены как прямые расширения обоих этих инструментов.

 

Но придется с прискорбием умолчать о графических инструментах Online. OnPerf и DB/Cockpit не подключены и не будут подключаться к Informix Universal Server, а новый графический диспетчер еще не готов. Утилиты обработки командных строк в Universal Server адекватны, но сложны в изучении и использовании.

 

Установив сервер, мы воспользовались программой Blade Manager из Universal Server, чтобы зарегистрировать модули обработки многомерных и Web-данных, а затем запустили несколько сценариев на SQL для построения начальных структур баз данных для этих функций. Оба процесса оказались просты, нам не понадобилось даже по ходу дела останавливать и перезапускать сервер.

 

Приложенную функцию DataBlade для Web, которую Informix провозглашает краеугольным камнем своей Web-технологии, мы протестировали, попытавшись с ее помощью создать тестовый узел со смешанным содержимым  -  HTML и двоичными файлами.

 

Web DataBlade, в отличие от самого Informix Universal Server, по техническим качествам отстает от требований рынка. Зарезервированные в этом модуле теги обеспечивают такие стандартные операции, как доступ к базе данных, переменные, условные блоки и т. д., но их использование оказалось трудным и неясным.

 

Кроме того, хотя Web DataBlade поддерживает устойчивые соединения между базами данных, в нем отсутствует управление состоянием, что делает разработку страниц еще более сложной, чем обычно. При этом пакет работает только на базе медленного соединения через общий интерфейс шлюза (CGI).

 

Компания Sybase, напротив, предлагает не только громоздкие среды программирования для Web, основанные на стандартных языках программирования, но и графические средства авторизации, облегчающие работу пользователей.

 

Informix обещает, что управление состоянием и поддержка более быстрого интерфейса прикладных программ (API) сервера Web корпорации Netscape Communications будет включена в модернизированную версию, которая выйдет в июне.

 

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

 

В Тестовом центре PC Week Labs сервер Informix Universal Server испытывали на рабочей станции SPARCstation 20 компании Sun Microsystems под управлением ОС Solaris 2.5. В настоящее время Universal Server поддерживает только две платформы  -  Sun и SGI компании Silicon Graphics. Выход версии для Unix компании Hewlett-Packard назначен на март, а для Windows NT, Siemens, Sequent и AIX  -  на II квартал этого года.

 

Informix, как и большинство поставщиков СУБД, запрещает тестирование своих продуктов без подробного письменного разрешения. Получить такое разрешение для этого обзора нам не удалось.

 

Цена Universal Server составляет $2500 за рабочее место или $50000 за один физический сервер. Базовая цена включает Informix Web DataBlade и модули DataBlade для обработки текста компаний Verity и Excalibur Technologies.

 

Тимоти Дик (PC Week Labs)

 

Как создать свой собственный модуль DataBlade

 

В настоящее время в продаже есть 28 коммерческих версий модулей DataBlade, обеспечивающих различные возможности  -  от видео до хранения генетического кода, но ценность этого продукта состоит в простоте их создания.

 

1. Установите пакет разработки DataBlade компании Informix под Windows NT и создайте файлы шаблонов.

 

2. Напишите программу на SPL, Си или Си++ (скоро будет и поддержка Java), предназначенную для задачи, которую вы хотите выполнить при помощи DataBlade, руководствуясь спецификой вашей компании. Эта программа получает от сервера указатели на данные и может передавать данные обратно на сервер тем же способом.

 

3. Скомпилируйте свой файл и поместите его в каталог модулей DataBlade.

 

4. Зарегистрируйте свой модуль DataBlade при помощи утилиты Informix Blade Manager. Эта утилита использует заранее написанные шаблоны, сгенерированные пакетом разработки (см. п. 1), чтобы информировать сервер о появлении новой доступной для него функции.

 

5. Зарегистрированные модули DataBlade работают как встроенные компоненты сервера или языка SQL. Вызовите модуль DataBlade, используя обычные операторы выделения SQL, или передайте данные из другой таблицы базы данных для особой обработки.

 

ЗАКЛЮЧЕНИЕ ТЕСТОВОГО ЦЕНТРА PC WEEK LABS

 

Организации, использующие специфические типы данных или данные мультимедиа, найдут более ясные и изящные способы управления своими данными при помощи Informix Universal Server, представляющего собой модернизацию Informix Online. Многопотоковая реляционная машина СУБД остается отличной платформой для текстовых и числовых данных.

 

А  -  отлично, В  -  хорошо, С  -  удовлетворительно, О  -  не тестировалось.

 

Informix Universal Server.Телефон компании Informix Software: (095) 755-8700;

 

Web-адрес: http://www.informix.com.

 

О методике оценки вы можете узнать по адресу: http://www.pcweek.com/reviews/meth.html.

 

Расширяемая архитектура модулей DataBlade; существенная доля DataBlade третьих поставщиков для специализированных приложений; поддержка некоторых объектно-ориентированных ключевых слов SQL; мощная реляционная машина СУБД.

 

Недостаток возможностей репликации, графических средств управления, параллельной загрузки и резервного копирования, шлюзов баз данных. Обеспечена поддержка только для платформ Sun и SGI. Приложенный модуль Web DataBlade труден в работе.