OLAP.ru   Rambler's Top100
Вы находитесь на страницах старой версии сайта. Перейдите на новую версию OLAP.ru
  
Поиск по сайту
Новости
Основы OLAP
Продукты
Business Objects/ Crystal Decisions
Каталог
OLAP в жизни
Тенденции
Download
Яndex
 
 
 
TopList
 
 Business Objects/Crystal Decisions  Oracle  Microsoft  IBM 
 Hyperion  Sybase  Informix  Actuate  SAS Institute  Brio 

Доступ к хранилищам данных с мобильного телефона


Р. Волынец, www.sas.com/russia

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

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

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

В настоящее время также достаточно актуальна возможность доступа к хранилищам данных «мобильных сотрудников», которым «в любом месте и в любое время» может потребоваться критически важная информация из хранилища данных. Возможным решением данной проблемы может стать использование портативных устройств беспроводной связи (мобильных телефонов, пейджеров, органайзеров и т. д.), поддерживающих технологию WAP (Wireless Application Protocol).

Технология WAP

Набор протоколов WAP предназначен для доступа к информации в сети WWW при помощи устройств, имеющих небольшой объем оперативной памяти, ограниченные возможности диалога с пользователем и достаточно низкую скорость передачи данных (10—14 Кбит/с).

WAP определяет протоколы прикладного, сеансового и транспортного уровней сетевой модели OSI для взаимодействия приложений по беспроводным каналам связи.

Прикладной уровень описывается спецификацией WAE (Wireless Application Environment) и реализуется в среде специальной программы (микроброузера), которая загружается в оперативную память мобильного телефона.

Сеансовый уровень, задаваемый спецификацией WSP (Wireless Session Protocol), позволяет устанавливать, использовать и завершать сеанс связи для передачи данных.

Транспортный уровень в архитектуре WAP состоит из транзакционного протокола WTP (Wireless Transaction Protocol), протокола защиты данных WTLS (Wireless Transport Layer Security) и протокола передачи данных WDP (Wireless Datagram Protocol).

Архитектура WAP предусматривает использование беспроводных сетей различных типов, в частности, поддерживаются сети стандартов GSM и CDMA.

Микроброузер мобильного телефона способен отображать информацию, записанную на языке WML (Wireless Markup Language), который представляет собой упрощенный вариант HTML, оптимизированный для использования в портативных устройствах. Микроброузер позволяет также выполнять программы, созданные с использованием языка сценариев WMLScript (аналог JavaScript).

Доступ к информационным ресурсам Интернет с WAP-совместимого телефона производится через специальное шлюзовое устройство (WAP Gateway, или WAP Proxy), которое осуществляет информационный обмен между беспроводной и проводной частями сети, преобразуя стек протоколов WAP (WSP, WTP, WTLS и WDP) в стек протоколов WWW (HTTP и TCP/IP). Шлюз WAP обеспечивает также преобразование данных в сжатый бинарный формат перед отправкой информации по мобильной сети и, соответственно, обратное преобразование при получении запроса от WAP-устройства.

Взаимодействие компонентов в архитектуре WAP происходит следующим образом.

Микроброузер WAP-устройства обращается к некоторому Web-серверу с запросом, используя стандартную систему адресации URL. Этот запрос передается по мобильной сети до узла, оборудованного шлюзовым устройством WAP, которое преобразует запрос WAP в стандартный запрос HTTP и передает его по сети Интернет указанному Web-серверу.

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

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

Интеграция хранилищ данных и WAP-приложений

Рассмотрим интеграцию хранилищ данных и WAP-приложений на примере ПО компании SAS (www.sas.com), которая первой из компаний, занимающихся разработкой средств организации и эксплуатации хранилищ данных, официально объявила о поддержке стандарта WAP.

Программные продукты SAS Institute позволяют разработчикам уже сейчас создавать как статические WML-отчеты на основе информации из хранилища данных, так и динамические WAP-приложения, позволяющие обращаться к хранилищу данных с произвольными запросами.

Предлагаемое SAS программное обеспечение — SAS System — представляет собой интегрированную программную среду для решения различных задач в области обработки и анализа информации. В частности, SAS System может успешно применяться для решения задач в следующих областях:

  • ввод и извлечение данных из других систем, преобразование и управление данными;
  • организация хранилищ данных;
  • статистический анализ, прогнозирование, исследование операций, контроль качества, аналитическая оперативная обработка (OLAP);
  • создание отчетов и графики;
  • разработка приложений, создание информационных систем для руководителей и систем поддержки принятия решений.

ПО SAS System имеет модульную архитектуру с центральным продуктом Base SAS, содержащим мощные средства преобразования данных и генерации отчетов. Остальные, необязательные для использования продукты в составе SAS System предлагают специфическую функциональность (например, SAS/STAT — статистический анализ, или SAS/ETS — анализ временных рядов) и, как правило, встраиваются в язык программирования Base SAS в виде дополнительных процедур и макросов.

SAS System может работать на различных аппаратных платформах, в различных операционных системах и поддерживает различные модели клиент-серверной архитектуры.

Средства создания статических WML-отчетов

Для формирования статических отчетов в формате WML достаточно возможностей продукта Base SAS. Дополнительно могут использоваться другие продукты SAS System. Страницы WML содержат, как правило, небольшое количество информации, но алгоритмы ее подготовки могут быть достаточно сложными.

В программах подготовки информации к выводу в WML могут использоваться программные конструкции, называемые «шагом данных» (Data Step), а также различные процедуры из Base SAS или из других продуктов SAS System.

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

Процедуры, входящие в состав Base SAS, позволяют осуществлять над таблицами следующие операции:

  • агрегация;
  • SQL-запросы;
  • ранжирование, сортировка и транспонирование;
  • подсчет базовых статистик;
  • печать отчетов.

WML-страницы создаются чаще всего с помощью «шага данных». При этом программист должен знать синтаксис языка WML, который во многом похож на HTML.

Base SAS содержит средства автоматической генерации WML в виде системы унифицированного вывода результатов Output Delivery System (ODS), появившейся в 8-й версии ПО SAS.

Механизм ODS позволяет отделить логику работы программы от дополнительных программных выражений, связанных с необходимостью сохранять результат в некотором формате. Программист пишет программу, выполняющую только содержательные действия, не заботясь о том, в каком именно формате будут представлены результаты работы этой программы. В зависимости от настроек ODS выполнение одной и той же программы может привести, например, к созданию как текстового отчета, так и отчета в формате HTML. Система SAS поддерживает сохранение отчетов в следующих форматах: текст, HTML, RTF, PDF, PostScript, а также обеспечивает поддержку XML. Использование механизма вывода в формат XML совместно с таблицами стилей XSL (eXtensible Style Sheet) позволяет автоматически генерировать отчеты в формате WML.

Значительную помощь в процессе автоматизации вывода данных в формат WML может оказать также язык макросов, встроенный в Base SAS.

Для проверки созданных WML-страниц можно использовать существующие программные эмуляторы WAP-устройств, например Nokia WAP Toolkit.

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

Средства разработки динамических WAP-приложений

Для организации динамических WAP-приложений на сервер, имеющий доступ к данным хранилища, должны быть установлены продукты Base SAS и SAS/IntrNet. Также могут использоваться и другие продукты SAS System, если требуется их функциональность.

Для вызова динамических приложений на базе SAS System Web-сервер может использовать различные методы, в частности интерфейс CGI или механизм сервлетов Java.

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

Технология CGI реализована в компоненте Application Dispatcher, входящем в состав SAS/IntrNet. Application Dispatcher состоит из стандартной CGI-программы (Broker), которая помещается на Web-сервер, и специального модуля Application Server, который выполняется на сервере SAS (сервер приложений). Application Dispatcher позволяет Web-клиентам обращаться с запросами к серверу SAS, который способен выполнять программы, написанные на языке Base SAS, и использовать весь спектр возможностей SAS System. Все средства, используемые для генерации статических WML-страниц, подходят и для использования в составе динамических приложений.

Сервлеты (servlet) являются альтернативой программам CGI. Сервлеты (программы на Java для выполнения на сервере) имеют лучшие характеристики в отношении производительности, они также поддерживаются большинством Web-серверов. Для серверов, не имеющих встроенной поддержки сервлетов, доступны различные дополнительные модули, которые эту поддержку обеспечивают, например JRun компании Allaire или ServletExec компании New Atlanta. Более удобной формой работы с сервлетами является использование механизма JSP (JavaServer Pages). JSP-страница представляет собой HTML/WML-файл, в котором в специальных тегах содержатся программы на Java. При первом обращении к этой странице происходит ее компиляция и генерируется Java-код, который выполняется как сервлет. Последующие обращения к этой странице напрямую приводят к выполнению этого сервлета.

Сервлеты Java могут взаимодействовать с сервером SAS, на котором дополнительно требуется продукт SAS/CONNECT. Для этого используются специализированные компоненты JavaBeans, поставляемые в составе пакета продуктов AppDev Studio (интегрированная среда разработчика Web-приложений). Компоненты JavaBeans, взаимодействующие с сервером SAS, являются распределенными объектами, часть которых выполняется на сервере SAS, а часть на Web-сервере. Таким образом, сервлет Java может обращаться к серверу SAS за данными или с запросом на выполнение некоторой программы и отображать полученные данные в формате WML.

В рамках технологии Java арсенал средств автоматической генерации WML-кода пополняется так называемыми TransformationBeans. Это компоненты JavaBeans, которые позволяют преобразовывать данные моделей в текст на WML.

Существуют Transformation Beans для создания таблиц, списков, кнопок-переключателей и т. д.

Для тестирования созданных WML-приложений можно использовать эмуляторы WAP-устройств типа Nokia WAP Toolkit.

* * *

С точки зрения технологии хранилищ данных WAP предоставляет еще один канал постоянного доступа к хранилищу данных для мобильных сотрудников.

Что для этого нужно? Мобильный WAP-телефон, оператор сотовой связи, предоставляющий услуги по доступу в Интернет, и интерфейс к хранилищу данных, преобразующий данные в формат протокола WAP.

Данные из хранилища могут регулярно сохраняться в виде статических WML-отчетов на Web-сервере или же быть доступными через динамические WAP-приложения.

Для реализации WAP приложений, взаимодействующих с хранилищем данных, можно использовать либо стандартные средства разработки (сторонних производителей), либо возможности программного обеспечения по организации хранилищ данных. В случае ПО компании SAS все необходимые для этого средства уже имеются в составе SAS System, которая, являясь открытой системой, способна к интеграции с другими программными продуктами и поддерживает различные стандартные протоколы (в данном случае, протокол WAP).

 Обсудить на форуме   Написать вебмастеру 

© 2001 Interface Ltd