Ж у р н а л   о   к о м п ь ю т е р н ы х   с е т я х   и   т е л е к о м м у н и к а ц и о н н ы х   т е х н о л о г и я х
СЕТИ И СИСТЕМЫ СВЯЗИ on-line
  ПОИСК: ПОДПИСКА НА НОВОСТИ: НОМЕР:
    ДОМОЙ • Архив: Новостей | Конференций | НомеровПодписка
 
   
 
   
    
РЕДАКЦИЯ
 
Все о журнале
Подписка
Как проехать
Где купить
Отдел рекламы
График выхода журнала
Адреса в Интернет

РУБРИКАТОР
   
• Инфраструктура
• Информационные
   системы

• Сети связи
• Защита данных
• Кабельные системы
• Бизнес
• Колонка редактора
• Электронная
   коммерция

• Только на сервере
• Системы
   учрежденческой
   связи

• Новые продукты


Rambler's Top100

  

Современные средства доступа к данным

Энтони Фрей

Если вы до сих пор помните слова вашего дедушки о том, что для всякого дела лучше использовать надлежащий инструмент, тогда и работать будет вдвое легче, то наверняка серьезно отнесетесь к выбору ПО доступа к базам данных (БД) через Web.

Однако сегодня многие инструменты, лежащие на верстаке вашего дедушки, вероятно, покажутся вам незнакомыми и даже странными. Это потому, что их использовали для ремонта машин, которые в наши дни стали музейной редкостью. Когда в последний раз вы видели «живьем» ручную дрель? То что ранее было «надлежащим» инструментом, теперь стало диковинкой.

Многие программные средства доступа к БД через Web постигла та же участь, с тех пор как мы рассматривали их в прошлом году. В то время продукты первого поколения еще исправно работали, но быстрое развитие новых технологий превратило большинство из них в анахронизмы.

И поскольку многие старые средства доступа к БД через Web все еще используются в современных системах, запросто может возникнуть ситуация, при которой будет невозможно работать эффективно. Например, CGI-сценарии на языке Perl были самым простым средством доступа к данным, теперь же они повсеместно признаны неэффективными. Обновленный вариант «Руководства для покупателя» поможет вам подобрать наилучший инструмент доступа к вашим базам данных, используя для этого не «ручную дрель», а эффективные современные инструменты.

Оцените объем работ

Чтобы правильно подобрать инструменты для работы, вам надо точно знать, что именно вы пытаетесь сделать. И какой бы инструмент вы ни выбрали для работы в Интернет или интрасети, необходимо учесть следующее.

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

Во-вторых, выбирая реляционную СУБД и платформу Web-сервера, убедитесь, что между ними можно организовать связь для доступа к данным. Это необходимо, потому что многие программные пакеты предоставляют средства доступа к данным для Web-сервера, но не обеспечивают соединения с реляционной СУБД на более низком уровне. В частности, для доступа к некоторым типам БД на мэйнфреймах с сервера Windows NT требуется связующее ПО производства третьих фирм и драйвер ODBC (Open Database Connectivity), такой, как DataDirect фирмы Intersolve, или даже отдельный шлюз для преобразования транспортных протоколов, например SNA в TCP/IP. Зачастую только поставщик реляционной СУБД может обеспечить соединение на этом уровне. В частности, продукт LiveWire фирмы Netscape Communications поддерживает СУБД Informix, Oracle и Sybase, а также интерфейс ODBC, но не поддерживает ПО Informix-Connect фирмы Informix, SQL Net фирмы Oracle или Open Client фирмы Sybase.

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

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

Поговорим об инструменте

Поведение любого программного продукта должно быть предсказуемым. Это же относится и к связующему ПО вашего Web-сервера. Несмотря на то, что продукты на основе интерфейса CGI предоставляют доступ к данным при использовании почти любого Web-сервера, имейте в виду, многие поставщики серверного ПО используют для этого шлюзы на основе интерфейса API, такие, как NSAPI (сервер фирмы Netscape), ISAPI (сервер Microsoft Internet Server) или WSAPI (сервер WebSite Pro). И поскольку эти шлюзы и Web-сервер связаны общим пространством памяти, они могут работать с максимальной производительностью. Возможно, CGI станет для вас единственным доступным вариантом при работе с какой-нибудь экзотерической платформой, например такой, как OS/390. В подобных случаях службы Web лучше всего поместить на отдельный физический сервер, а мэйнфрейм использовать просто как источник данных.

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

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

Язык манипуляции данными DML (Data Manipulation Language) - это средство для доступа к данным, которому часто не уделяют должного внимания. В большинстве случаев DML-продукты реализуются в соответствии со стандартом SQL. Однако некоторые из них не позволяют обновлять базу данных, так как либо предназначены в первую очередь для реализации механизма поиска данных, либо не поддерживают язык SQL в полном объеме. В конце концов, вы как никто другой знаете структуру вашей БД и знаете, какие операции следует выполнять с данными, поэтому постарайтесь найти для себя продукт, который позволит вам с максимальной гибкостью обновлять вашу базу данных и осуществлять запросы к ней.

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

Испробованные и надежные методы

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

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

В этом пакете применяется расширенный синтаксис HTML для представления запросов на обычных Web-страницах.

В результате появляется интуитивно понятный и естественный способ программирования результирующих отчетов.

Во втором методе применяются интерпретируемые или требующие компиляции языки для динамической генерации HTML-кода. Результаты выполнения запроса БД должны быть отформатированы программным путем в виде HTML-страниц. В отличие от этого метода метод директив включения позволяет автоматически вставлять результаты выполнения запроса в HTML-страницы. И хотя Perl до сих пор остается наиболее известным языком, используемым для динамической генерации HTML-кода, большинство динамических HTML-страниц сейчас создаются при помощи языка JavaScript или VBScript.

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

Мы пришли к такому заключению по двум причинам. Во-первых, многие поставщики средств доступа к БД приняли JavaScript или VBScript в качестве стандартного процедурного языка. Ранее большинство поставщиков использовали языки собственной разработки, напрямую связанные с хранящимися в реляционных СУБД процедурами. Применение же стандартных языков для создания ваших сценариев гарантирует, что они будут переносимыми и поддерживаемыми любой серверной платформой. Кроме того, поскольку JavaScript поддерживается многими новыми браузерами, его можно использовать для проверки правильности ввода исходных данных запроса. Это является очевидным преимуществом и дает вам не только единообразную модель программирования запроса к БД на обеих сторонах (клиентской и серверной). При проверке правильности ввода данных на клиентской стороне время отклика для пользователя заметно снижается и устраняется излишний трафик. Такой же эффект может быть достигнут и при помощи VBScript. Однако применение этого языка в общем случае ограничивается продуктами Internet Information Server (IIS) и Internet Explorer (IE) фирмы Microsoft.

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

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

Современные методы доступа к данным

Сегодня Web-приложения становятся более динамичными, чем когда-либо прежде. Они требуют все боўльшего объема вводимых пользователями данных, генерируют выходные данные «на лету» и, кроме того, используют все боўльшее число источников информации. Это значит, что вам все чаще придется использовать в своих решениях новейшие возможности Web-технологий, не ограничиваясь одним лишь доступом к данным. И, поскольку эти возможности по-прежнему обеспечиваются связующим ПО для Web, все решения по обеспечению доступа к данным через Web фактически становятся похожими на полнофункциональные серверы приложений.

Все это хорошо, но, если вы хотите использовать решения, которые будут тесно интегрироваться с вашими прикладными корпоративными системами, обратите внимание на появившиеся в нашем «Руководстве» продукты второго поколения. В них включены следующие возможности: распределенная обработка транзакций (distributed transaction processing - DTP), распределенная объектная технология (distributed object technology) и электронная коммерция.

Продукты, подобные Sapphire/Web фирмы Bluestone Software, Tango фирмы EveryWare Development, WebEnterprise фирмы Forte Software, Amazon фирмы Intelligent Environment и StarSQL Pro фирмы StarQuest Software, наглядно демонстрируют реальность возможности распределенного управления транзакциями в Web. Когда-то достаточно было лишь иметь информацию о состоянии БД и пользовательских сеансах, что позволяло вам следить за местонахождением пользователей, просматривающих Web-страницы, и в случае необходимости использовать транзакции реляционной СУБД для сохранения целостности базы данных, если действия пользователей влекли за собой какие-либо изменения в ней. Проблема значительно усложняется, если необходимо обеспечить доступ к данным, хранящимся сразу в нескольких БД, например бухгалтерской и транспортной, или выполнить интеграцию с существующими системами DTP.

Распределенные объектные технологии, такие, как CORBA (Common Object Request Broker Architecture) и DCOM (Distributed Component Object Model) фирмы Microsoft, существенно облегчают интеграцию различных источников данных. Они позволяют эффективно связывать существующие приложения и данные с помощью объектного интерфейса, который легко организовать с помощью Web-серверных сценариев и программ. Системы, построенные на основе CORBA, особенно хорошо работают в многоплатформенной среде.

Для организации оптовой электронной торговли советуем вам поискать поддерживающие ее технологии. Например, службы справочника, протоколы SSL (Secure Sockets Layer), службы обработки кредитных карт и электронного обмена данными (Electronic Data Interchange - EDI) - все эти технологии связаны с процессом обмена деловой информацией.

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





  
8 '1998
СОДЕРЖАНИЕ

колонка редактора

• Рецепт успеха

локальные сети

• Победы на кабельном фронте

• NetMon: сетевой анализатор Microsoft выходит из тени

бизнес

• Как обуздать технологического гиганта

• CISCO - OCS: партнерство превыше всего!

• CA поворачивается лицом к каналам сбыта

корпоративные сети

• Лучшие продукты 1998 года

• Шлюзы видеоконференцсвязи стандарта H.323

• Три условия успеха сетевого специалиста

услуги сетей связи

• "Небесные" высокоскоростные сети (окончание)

• Наступит ли время Интернет-телефонии?

• Тестируем маршрутизаторы ISDN для SOHO

• Контроль качества услуг связи

• Какая связь в Республике Мордовия?

интернет и интрасети

• Интернет-торговля. Часть I.

• Современные средства доступа к данным

защита данных

• Новое поколение ИБП

только на сервере

• Перспективы применения языка XML в электронной коммерции

• Пакеты удаленного управления для контроля за ресурсами корпоративной сети

новые продукты

• NetWare 3.2: только для профессионалов; В семействе Accelar прибыло; MasterSwitch: включение и выключение на расстоянии; Summit48 фирмы Extreme Networks бьет все рекорды; Catalyst 8510 фирмы Cisco Systems;



 Copyright © 1997-2007 ООО "Сети и Системы Связи". Тел. (495) 234-53-21. Факс (495) 974-7110. вверх