Общие вопросы
Как дела у Oracle?
Ответ Microsoft
Предложения Informix
Точка зрения IBM
Подход Sybase
Внимательно следите за объектами

Умеренная поддержка Java и ActiveX

Прочие усовершенствования основных серверов СУБД


Подключение систем управления реляционными базами данных к World Wide Web - эта задача, некогда казавшаяся невыполнимой, становится все более и более реальной, хотя и по-прежнему нелегкой.

Многие ведущие производители серверов СУБД стремятся "упаковать" свои продукты в Web-"обертку": разрабатывается программное обеспечение промежуточного уровня (middleware), позволяющее заметно улучшить взаимодействие серверов СУБД с Web. При этом в выигрышном положении оказываются две группы пользователей.

Во-первых, это Web-мастера, которым может прийтись по душе идея использовать СУБД для хранения содержимого Web-узла. Перенос СУБД на Web означает, что пользователь получает возможность отказаться от работы со статическими Web-страницами и начать создавать их в динамическом режиме, "вытаскивая" данные из различных записей в базе данных с помощью промежуточного программного обеспечения.

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

Большая выгода от использования Web-технологий при работе с базами данных состоит в том, что при этом исчезает необходимость написания и сопровождения большого числа клиентских приложений, используемых в качестве внешних интерфейсов. Эти приложения отвечают за выполнение целого ряда задач - от выдачи предварительно отформатированной информации на экран до генерации SQL-запросов. Каждый раз, когда во внешний интерфейс вносятся изменения, приходится заботиться о том, чтобы поставить новые версии программы на все клиентские машины.

Web-технологии позволяют создавать HTML-страницы, обеспечивающие выдачу информации на экран, и передать все функции обработки данных Web-браузеру, который, в свою очередь, обращается к СУБД. Это означает, что для изменения формата экрана не надо рассылать всем пользователям новые версии внешнего интерфейса - достаточно просто отредактировать HTML-страницу. Можно централизованно вносить изменения в Web-сценарии доступа к СУБД, ничего не меняя на браузере. Кроме того, применение Web-технологий в качестве внешнего интерфейса СУБД позволяет использовать сетевые компьютеры (часто называемые "тонкими" клиентами), на которых устанавливается только браузер и сетевое ПО для доступа к Web-серверам.

Справедливости ради надо сказать, что все производители пытаются постепенно улучшать свои продукты, однако их попытки меркнут по сравнению с усилиями по переносу Web-технологий на серверы СУБД.

Все крупнейшие производители реляционных СУБД - IBM, Informix, Microsoft, Oracle и Syba-se - аннонсировали промежуточное ПО для обмена данными с СУБД при помощи Web-технологий.

Общие вопросы

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

Например, по мнению Джосси Джил, президента компании Four Seasons Software, стоит серьезно озаботиться вопросом о том, каким образом в Web-среде будет восстанавливаться информация о сеансе. Информация о сеансе - это данные о том, в каком месте базы данных находится пользователь; при случайном обрыве связи эти данные могут помочь вернуться к нужной странице и записи после восстановления работоспособности канала.

В Web понятие состояния отсутствует, и в связи с этим могут возникнуть определенные проблемы - потеряв соединение, пользователь зачастую может потерять и место, на котором он находился в базе данных. Чтобы обеспечить решение этой проблемы, будущие серверы Web и СУБД будут снабжены специальным вычислительным модулем слежения за состоянием сервера (state server engine), который и будет контролировать ход сеанса и отвечать за хранение данных на тот случай, если они понадобятся пользователю. Таким образом, пользователи получат возможность возвращаться к тому месту, где они находились в момент обрыва связи.

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

Разные серверы СУБД могут в разной степени облегчить этот процесс. Наиболее медленная часть обработки Web-запросов к базам данных - открытие и закрытие канала связи между Web-сервером и СУБД. Некоторые продукты, в частности WebServer фирмы Oracle, могут быть сконфигурированы таким образом, чтобы открывать канал связи с базой данных в момент начала работы с приложением, а затем поддерживать его в открытом состоянии.

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

Наиболее разумный способ подключения Web-сервера к СУБД состоит в том, чтобы воспользоваться каким-либо интерфейсом прикладного программирования (Application Programming Inter-face - API), например Netscape Server API компании Netscape Communications или Internet Server API компании Microsoft, который не занимает дополнительной памяти и прочих ресурсов. Большинство основных производителей СУБД предлагает разнообразные вариации на эту тему, например компоненты промежуточного ПО, с помощью которых можно построить еще более прямой и мощный канал связи между Web-сервером и СУБД. Ниже приводится обзор продуктов пяти основных производителей серверов СУБД в этой области.

Как дела у Oracle?

Oracle предлагает покупателям программное обеспечение Web Request Broker (WRB), позволяющее создавать каналы связи между WebServer и СУБД Oracle. WRB представляет собой часть продукта WebServer; Oracle поставляет оба продукта вместе с Oracle7 Server 7.3. Пользователи, работающие со старыми версиями Oracle7, могут докупать WebServer и WRB и использовать их в качестве модулей-приставок (add-on).

При интеграции Web и СУБД с использованием данного семейства обеспечивается поддержка онлайновой обработки транзакций; кроме того, продукты дают возможность устанавливать постоянные сеансы с участием Web-браузеров, Web-серверов и серверов баз данных. Во время постоянного сеанса переход от одного экрана браузера к другому не сопровождается изменением состояния базы данных в рамках данного сеанса.

WRB действует в обход CGI; продукт самостоятельно устанавливает канал связи между Web-сервером и СУБД. Поскольку CGI не используется, WRB оказывается в состоянии обеспечивать более совершенное управление процессами, порождаемыми приложением. В частности, он может самостоятельно управлять несколькими одновременными подключениями к базе данных, обеспечивая тем самым повышение производительности.

Программисты могут также пользоваться WRB API и самостоятельно разрабатывать модули, которые Oracle называет картриджами. Картридж - это интерфейс программирования или упакованное приложение, которое может входить в состав WebServer и пользоваться разными общеупотребительными функциями СУБД, в частности хранимыми процедурами (stored procedure) для доступа к базам данных. Например, существуют картриджи для Java и для языка программирования СУБД Oracle под названием PL/SQL.

Основная задача WRB - обслуживание Oracle7 и WebServer. Тем не менее компания планирует вскоре распространить свою поддержку на Web-серверы производства компаний Netscape и Microsoft. Ведутся работы и над СУБД других производителей.

Помимо WRB, Oracle предлагает новые версии своих продуктов Developer/2000 и Designer/2000, представляющих собой инструментальные средства разработки приложений для интрасетей. На эти продукты стоит обратить внимание только разработчикам приложений уровня предприятия, поскольку для работы с ними требуется глубокое понимание основных идей, заложенных разработчиками в СУБД Oracle; кроме того, они требуют от своего пользователя гораздо более высокого уровня обучаемости, чем ряд конкурирующих продуктов.

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

Ответ Microsoft

Для тех у кого уже установлена система Windows NT, наиболее привлекательным продуктом является Microsoft SQL Server. Его сильными сторонами являются богатые функциональные возможности и одно из лучших соотношений цены и производительности среди всех изделий, работающих на процессорах производства Intel. В отличие от продукции Oracle, ориентированной на пользователей систем старшего класса, данный продукт предназначен для значительно более широкого круга потенциальных покупателей - это простая в использовании СУБД общего назначения, которая может работать также и с Internet.

В комплект поставки SQL Server 6.5 входит Web Assistant, представляющий собой инструментальное средство для создания динамических HTML-страниц. Web Assistant помогает пользователю создать процедуру, которая может извлекать данные из СУБД, а затем использовать их для создания статической HTML-страницы.

Web Assistant позволяет извлекать данные из СУБД тремя способами. Можно либо потребовать извлечения колонок из определенной таблицы базы данных, либо использовать SQL-операторы в свободном формате, либо обращаться к хранимым процедурам. Пользователь может указать, что Web Assistant должен обращаться к СУБД и создавать HTML-документы при выполнении определенных условий, например в определенные дни, в определенное время дня или при каждом изменении указанной пользователем части данных. Таким образом можно, например, каждый вечер генерировать отчет о продажах за истекший день, помещая его затем на сервер интрасети, - утром начальство придет и прочтет. Прелесть такого подхода состоит в том, что пользователи Web, осуществляющие доступ к этим HTML-документам, не подключаются к базе данных в реальном времени: они просматривают статическую (хотя и обновляемую) HTML-страницу.

Недостатком Web Assistant является то, что он не может создавать динамические Web-страницы "на лету". Например, он не может просмотреть журнал с записью предшествующих действий человека, "входящего" в данный момент на Web-узел, с тем чтобы обратиться к данному человеку и напомнить ему, чем он занимался в прошлый раз.

У Microsoft имеются и продукты для Web-серверов. Internet Informa-tion Server (IIS), входящий в комплект поставки Windows NT Server 4.0, может использоваться для публикации данных из любой СУБД, поддерживающей стандарт ODBC (Open Database Connecti-vity), например из SQL Server. Пользователи SQL Server имеют определенные преимущества при использовании IIS, поскольку Microsoft дает неограниченную лицензию на использование SQL Internet Connectors (программного средства для перевода создаваемых с помощью Web Assistant статических Web-страниц на IIS) в интрасетях. Если приложение не ограничивается рамками интрасети, то приходится покупать клиентские лицензии на SQL Server.

Предложения Informix

Компании Oracle и Microsoft разработали свои собственные браузеры Informix же вынужден объединяться с Netscape. Компания Netscape нанесла довольно сильный удар по самолюбию ведущих производителей СУБД, способствовав объединению продукта Online Workgroup Server производства Informix с программой LiveWire Pro, представляющей собой часть продукта SuiteSpot, выпускаемого Netscape. После этого в союз с Netscape вступили также Oracle и Sybase.

По условиям лицензии пакет продуктов совместного производства Informix и Netscape может применяться неограниченным числом пользователей при работе через Web, однако работать с той же СУБД вне Web нельзя.

Informix предоставляет пользователю несколько способов включения в Web-страницы данных из реляционной базы. В качестве продукта младшего класса компания бесплатно поставляет Web Interface Kit, с помощью которого можно устанавливать простые связи между Web-сервером и СУБД через CGI. Более серьезный продукт носит название Web Connectivity Framework; он обеспечивает сохранение информации о состоянии сеанса точно таким же образом, как это делает само приложение базы данных.

Кроме того, Informix поставляет продукт Web DataBlade, представляющий собой среду разработки приложений, с помощью которой программист может строить сложные приложения баз данных на основе Web из набора модулей DataBlade. Технология Data-Blade - это стержень долгосрочной стратегии Informix, направленной на использование объектно-ориентированных технологий в среде Web; Informix получил эту технологию, купив компанию Illustra Information Technologies.

По существу, DataBlade представляет собой объектные модули расширения базы данных Illustra. Модули DataBlade имеют все функции доступа к данным и индексирования, необходимые при работе с данными новых типов. В результате в базе данных можно хранить сложные данные, например видео- и аудиоинформацию или изображения, наряду с такими данными, как текст или мультимедийные данные других типов. Web-приложения смогут извлекать эту информацию из базы данных и использовать данные разных типов для создания Web-страниц "на лету".

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

Точка зрения IBM

Обеспечить поддержку сложных типов данных стремится и IBM. Компания недавно объявила о намерении включить возможности управления сложными данными в DB Version 2, работающую под OS/2 и AIX.

В настоящее время IBM выпускает продукт под названием WorldWide Web Connection, обеспечивающий соединение с Internet для базы данных DB2 Version 2. Ему на смену скоро должен прийти продукт Net.Data, обеспечивающий совместимость "снизу вверх"; в настоящее время он проходит бета-тестирование.

Net.Data позволит разработчикам преобразовывать статические HTML-страницы Web в динамические Web-приложения. Для этого используются макрокоманды Web, сочетающие в себе простоту HTML с функциональными возможностями CGI. В результате упростится процедура встраивания данных реального времени в статические Web-страницы, при этом будет использоваться информация, получаемая из баз данных, простых файлов, реестров, приложений и системных сервисов. Net.Data сможет непосредственно взаимодействовать с DB2, а для работы с прочими СУБД потребуется драйвер ODBC. Будет обеспечена поддержка сценариев Java, Perl и Rexx.

IBM рекламирует Net.Data как средство перехода от архитектуры клиент-сервер к приложениям на базе Web. В качестве следующего шага предполагается начать поставки единого пакета, в который войдут DB2 (для OS/2 или AIX), Net.Data и NetObjects Fusion. Последний представляет собой набор инструментальных средств разработчика для Web, производимый компанией NetObjects.

Подход Sybase

Sybase придерживается иного подхода. Эта компания предпочитает поставлять программное обеспечение, позволяющее создавать настраиваемые Web-страницы "на лету". Продукт Sybase под названием web.sql, в настоящее время проходящий бета-тестирование, и программное обеспечение для соединения нескольких баз данных ObjectConnect представляют собой нечто вроде "клея" для трехслойной модели сервера приложений Sybase; эти продукты связывают Web-серверы с базами данных Sybase и прочими базами данных масштаба предприятия.

С помощью web.sql можно встраивать команды баз данных (например, операторы языка SQL или скрипты Perl) в текст страниц HTML. Таким образом можно создавать Web-страницы, чье содержимое (content) будет соответствовать персональным предпочтениям и вкусам конкретного пользователя. Например, для пользователя, разместившего заказ на Web, можно создать специальную страницу, на которой ему будет предоставлена скидка на следующий заказ.

Кроме того, Sybase предлагает продукт NetImpact Dynamo, представляющий собой шлюз-интерпретатор между СУБД SQL Anywhwere Professional (Sybase) и Web-сервером. Уникальность Net-Impact Dynamo состоит в том, что это изделие позволяет снабдить каждого разъездного сотрудника своей собственной версией корпоративной интрасети, установленной на его переносном компьютере.

Sybase выступает также как реселлер браузеров и серверов Netscape и предоставляет поддержку этих продуктов.

Внимательно следите за объектами

По мнению Криса Марони, директора по работе с сетями компании-системного интегратора Extra.net, возможностей промежуточного программного обеспечения, имеющегося в настоящее время на рынке, вполне достаточно для начала работы с Web-приложениями среднего и младшего класса.

Приложения среднего класса осуществляют обработку транзакций с использованием Web-браузера и данных, хранящихся в реляционной СУБД. Приложения младшего класса выполняют Web-запросы к базам данных и генерируют отчеты. Однако, как указывает г-н Марони, для поддержки мультимедийных приложений старшего класса (по общему мнению именно эти приложения получат широкое распространение на Web) требуются объектно-ориентированные СУБД или гибридные объектно-реляционные базы. В качестве объектов в таких базах данных можно хранить, например, видео- и аудиофрагменты; удаленные пользователи таких баз могут получать видеоуроки с помощью Web-браузеров.

По мнению Кевина Стрейнджа, директора по исследовательской работе компании Gartner Group, потенциальными пользователями данных сложного типа и средств управления видео- и аудиообъектами пока что являются только самые крупные организации. Тем не менее Стрейндж считает, что к 2000 г. такие технологии станут общеупотребительными. Так что нет ничего удивительного в том, что к началу следующего столетия многие из нас будут работать с комбинированными объектно-реляционными базами данных, в особенности те, кому требуется обработка информации средствами Internet или интрасетей.


Рэм Тэккет (Ram Tackett) - технический аналитик компании Currid&Co, занимающейся оценкой информационных технологий. С ним можно связаться через Internet по адресу tackett@currid.com.

Умеренная поддержка Java и ActiveX

Лишь небольшое число производителей серверов для реляционных СУБД поставляют средства создания аплетов Java и управляющих элементов ActiveX.

  • Borland, IBM, Informix, Microsoft и Ramina поддерживают разработку аплетов Java для клиентов.
  • IBM, Informix, Microsoft и UniSQL поддерживают разработку аплетов Java для серверов.
  • IBM, Informix, Microsoft, Sybase и Unidata поддерживают язык JavaSchript.
  • Informix и Microsoft поддерживают разработку средств управления ActiveX для клиентов.
  • Informix, Sybase и Microsoft поддерживают разработку средств управления ActiveX для серверов.


Прочие усовершенствования основных серверов СУБД

Помимо обеспечения поддержки Web-технологий, производители СУБД вносят и другие усовершенствования в свои продукты. Ниже приводится список наиболее важных усовершенствований.

  • В SQL Server 11 for Windows NT компании Sybase появилось новое средство Logical Memory Manager, обеспечивающее поддержку онлайновой обработки транзакций и поддержку принятия решений в реальном времени. С помощью этого средства в оперативной памяти можно создавать неограниченное число именованных внутренних буферов; эти буфера связываются с определенными таблицами и обеспечивают ускорение доступа к данным.
  • SQL Server 6.5 компании Microsoft предоставляет расширенные средства интеграции с серверами других СУБД; в частности, обеспечивается тиражирование данных на любом ODBC-сервере базы данных, например DB2 (IBM), Oracle7 (Oracle Corp.) и продуктах Sybase.
  • Компания Informix Software наконец завершила слияние с Illustra Information Technologies, в результате чего Informix заполучила ряд важных технологий для объектно-ориентированных СУБД. Informix также выпустила новую серию продуктов под названием MetaCube Product Family. Эти продукты предназначены для онлайновой аналитической обработки связей, они обеспечивают быструю выборку данных (slice and dice) в системах принятия решений.
  • Windows NT Server быстро набирает очки в соревновании сетевых операционных систем, вытесняя как NetWare компании Novell, так и OS/2 Warp Server корпорации IBM в качестве платформы для СУБД младшего класса. Ряд производителей, известных как поставщики продуктов для Unix - и в их числе Informix, - выпустил новые версии своих продуктов для Windows NT раньше, чем их Unix-аналоги. Если эта тенденция сохранится, то WIndows NT Server еще до конца текущего столетия может вытеснить Unix с занимаемого этой системой места наиболее предпочтительной операционной системы для СУБД. Windows NT вторгается также и на рынки других стран, в частности Японии, где национальные производители аппаратного обеспечения практически не выпускают продукты для Unix.

  • В список рекомендаций Network World входят продукты, которые мы советуем вам рассмотреть при планировании закупки ПО сервера реляционной СУБД. Компании, упомянутые в этом списке, предоставляют существенную поддержку Web-технологий и предлагают широкий набор основных функций СУБД, которые могут удовлетворить запросы пользователей сети предприятия. Однако этот список не является универсальной рекомендацией.

    Недавнее приобретение компании Illustra Information Techhologies заметно продвинуло Informix Software к интеграции объектно-ориентированной технологии с СУБД. Партнерство с Netscape Communications усилило позиции Informix на рынке Internet. Впрочем, нельзя не отметить, что продукт этой компании OnLine Dynamic Server 7.0 и раньше обеспечивал поддержку Web-приложений, порождающих интенсивный трафик. Это достигалось использованием серверов с параллельной обработкой, поддерживавших осуществление запросов и выполнение транзакций в параллельном режиме. Поэтому Informix можно также отнести к числу сильных поставщиков приложений для хранилищ данных, требующих больших объемов машинного счета. Большую роль в будущем продукте Informix под названием Universal Server призваны сыграть и DataBlades - объектные модули, в которых инкапсулированы все функции и процедуры индексации, необходимые для работы с новыми типами данных. Объединение продуктов Informix и Illustra в Universal Server позволит обеспечить поддержку приложений на базе Web.

    Поддержка Windows NT растет, и это значительно расширяет область применения продукта SQL Server 6.5 компании Microsoft. Семейство продуктов компании Microsoft, в которое теперь входят четвертая версия NT и версия 6.5 SQL Server, достигло, наконец, такого уровня, который необходим для удовлетворения запросов пользователей масштаба предприятия. SQL Server - одна из наиболее простых в использовании СУБД. Этот факт, а также сильная поддержка драйверов и приложений сторонних фирм заметно укрепили положение продуктов, работающих под Windows NT. Цены на продукты держатся на потребительском уровне, и это обеспечивает такое соотношение цены и производительности, которое соответствует запросам пользователей компьютеров на базе Intel. С появлением в недалеком будущем кластеризации в NT SQL сможет составить серьезную конкуренцию Unix-системам.

    Oracle остается королем в области серверов СУБД. Его продукт Oracle Server 7.3 немало способствовал тому, что годовой объем продаж компании достиг миллиарда долларов. Компания обеспечивает самый высокий уровень поддержки продуктов сторонних компаний и работы в многоплатформенном режиме. Она предлагает полное решение большинства проблем в области СУБД и интрасетей с использованием полного набора средств в диапазоне от уровня клиент-браузер до уровня приложение-сервер. (Однако тем, кто раньше с Oracle не работал, первое знакомство будет стоить серьезных усилий на обучение и больших денег.) Кроме того, Oracle обеспечивает хорошую поддержку параллельной обработки.

    Sybase недавно приобрела компанию PowerSoft, которой принадлежали права на технологию баз данных Watcom. В результате у Sybase сейчас имеется разнообразный набор продуктов - от семейства SQL Anywhere до SQL Server. В результате пользователи получили широкий выбор систем разного масштаба - предназначенных как для индивидуального пользователя, отдела предприятия, так и для очень больших баз данных. Продукты web.sql и NetImpact Dynamo обеспечивают разработчикам приложений под Sybase широкий набор средств для персональной настройки публикаций в интрасетях при минимуме программистских усилий. Для этого используются операторы SQL и Perl, встроенные в страницы HTML.