Проект Весь Академгородок - новые решения для новой ГИС в Интернет
М. Патренина, Е. Коинов, Новосибирский региональный центр геоинформационных технологий
«Весь Академгородок» - инициативный проект Новосибирского регионального центра геоинформационных технологий. Его суть в создании справочно-информационной системы под Интернет на базе интерактивной карты новосибирского Академгородка. Основные цели, поставленные перед разработчиками системы, сводились к отработке технологии представления ГИС в Интернет на базе продукта ArcIMS (ESRI, Inc.) [1]. Однако с самого начала предполагалось, что следующим шагом в развитии системы станет создание коммерческого Интернет-ресурса.
Российская Интернет-коммерция развивается сегодня весьма стремительными темпами. Не сбавляет обороты и развитие технологий ГИС/Интернет. Еще два-три года назад примеров интерактивных карт в русскоязычном Интернете было столь же немного, сколько Интернет-магазинов. Сегодня и ГИС, и коммерция не только повсеместно обживают российский Интернет, но и составляют иногда замечательный симбиоз в виде коммерческих справочно-информационных сайтов на базе картографического интерфейса [2, 3].
По-видимому, городские справочные системы - это сегодня едва ли не единственно возможный вид Интернет-проектов, где применение технологий ГИС/Интернет может быть рентабельно, по крайней мере, в нашей стране. В самом деле, основными параметрами рентабельности таких систем служат затраты на их производство с одной стороны и число пользователей Интернет-ресурса - с другой. Очевидно, чем ниже первый показатель и чем выше второй, тем система будет рентабельнее. Информация, рассчитанная на жителей крупного города плюс относительно недорогие технологии представления ГИС в Интернете, созданные усилиями отечественных разработчиков - вот та основа, на которой вполне резонно строятся сегодня коммерческие ГИС-сайты.
Так уж получилось, что проект Весь Академгородок построен на абсолютно противоположных принципах. Во-первых, новосибирский Академгородок - удаленный, обособленный городской район с населением около 100 тыс. человек. Во-вторых, в качестве инструмента реализации функций ГИС в Интернете использован достаточно дорогостоящий продукт фирмы ESRI - ArcIMS. При этом разработчики видят залог успеха своего проекта именно в этих нестандартных решениях.
Специфика Академгородка как крупного научного центра
Крупные научные центры, созданные в разных городах нашей страны еще в годы развитого социализма, функционируют и развиваются, несмотря на непрерывные кризисные ситуации в стране и недостаточное финансирование отечественной науки. Сегодня специфика научных центров такова, что уровень компьютеризации их населения в несколько раз выше, чем в крупных городах России. По некоторым оценкам количество пользователей Интернет в России составляет 3% от взрослого населения, в крупных городах - 5%, в новосибирском Академгородке он составляет порядка 20 30%, что соответствует среднему уровню достаточно развитых по этому показателю стран Европы (Норвегия, Дания и Финляндия) [4]. Такая ситуация обусловлена, в первую очередь, функционированием развитой компьютерной сети Новосибирского научного центра и бесплатным доступом к Интернету практически всех организаций СО РАН за счет поддержки фонда Сороса. Таким образом, на сегодня каждый четвертый новосибирский пользователь Интернет - житель Академгородка. Всего число пользователей Интернета в Академгородке около 20 тыс. Следовательно, Интернет-проект, рассчитанный на жителей новосибирского научного центра, должен иметь достаточно весомую отдачу. Особенно если предположить, что Интернет-аудитория Академгородка в среднем более активна, чем городская (под активностью имеется ввиду количество часов в день, проводимое пользователем в Интернет). Специально, правда, подобных исследований не проводилось, и это предположение основано на том, что жители научного центра в гораздо большей степени пользуются бесплатным доступом в Интернет, чем простые горожане.
Разумеется, специфика Академгородка не заканчивается особенностями его Интернет-аудитории. Новосибирский научный центр - это часть истории российской науки, это богатые образовательные и культурные традиции. Интерес к Академгородку огромен с самых первых дней его существования. О нем написаны книги, сняты фильмы, накоплены немалые объемы информации. Собрать самые интересные материалы «под одной крышей» и сделать систему «Весь Академгородок» визитной карточкой новосибирского научного центра - еще одна перспектива развития системы. И еще одна возможность отработать новые идеи - найти удачные решения для представления в рамках одного Интернет-проекта ГИС, мультимедийных составляющих, фотоархивов и т. д.
Академгородок со своей самобытностью подсказывает и другие идеи развития Интернет-проекта НРЦГИТ. Среди них - обслуживание часто проходящих в городке международных научных конференций и семинаров, развитие научного сервиса в сети Интернет, образовательные программы и многое другое.
Однако возможности развития системы ограничены возможностями технологий, на базе которых она функционирует. Поэтому технология создания интерактивных карт - один из самых важных аспектов проблемы и на ней стоит остановиться подробно.
Технологическое решение на базе ArcIMS сервера
Проект «Весь Академгородок» построен на базе Internet Map Server 3.0 (ArcIMS) компании ESRI, Inc. Новосибирский ГИС-центр стал владельцем этого продукта благодаря многолетнему бизнес-партнерству с компанией ESRI.
ArcIMS - это комплекс программных средств, ориентированный на работу с географическими данными в Интранет/Интернет. ArcIMS предоставляет мощные средства для создания и администрирования картографических серверов. На его основе могут быть реализованы ГИС приложения как доступные через сеть Интернет, так и корпоративного уровня. Помимо стандартного набора ГИС услуг типа рендеринг, геокодирование, выполнение пространственных и атрибутивных запросов продукт обладает рядом уникальных возможностей. Отличительной особенностью ArcIMS является функция распространения информации в виде векторного потока, что позволяет использовать удаленные данные, так же как и локальные. Доступ к распределенным ресурсам обеспечивается через всемирную сеть Интернет, в том числе и через мировую паутину.
В основе системы лежат самые перспективные и новационные технологии. Реализация многослойной архитектуры предоставляет возможности масштабирования от небольших локальных сетей Интернет до полномасштабной Интернет. Использования Java для реализации набора компонент промежуточного звена позволяет использовать любые платформы поддерживающие выполнение Java-runtime для среднего слоя. В качестве основного управляющего протокола и протокола обмена данными разработан язык AXL (ArcXML) - диалект XML. Использование out-of-box механизма позволяет расширять функциональность сервера, реализуя свои custom-сервисы. В качестве сопутствующего продукта поставляется Java SDK, с его помощью можно реализовать свои собственные геоинформационные серверные и клиентские приложения, как работающие на базе ArcIMS, так и автономного характера. ArcIMS SDK по функциональности сравнимо с MapObjects.
Большое внимание было уделено клиентской части, ArcIMS поддерживает самые разнообразные клиентские приложения, отличающиеся мощностью и набором функциональных возможностей. Среди поставляемых приложений хотелось бы отметить Java-клиенты. Такой клиент может быть запущен как в Web-браузере, так и в stand-alone-режиме. Несомненное преимущество такого клиента - возможность работать с локальными данными, предоставляемыми клиентом, при этом на базовые серверную подложку можно наносить свои тематические слои. Так же Java-клиент обеспечивает работу с данными расположенными на разных серверах, при построении клиента предлагается указать разные источники данных и ArcIMS-сервер динамически получит информацию в виде векторного потока и отрисует единую карту. Реализуя разнообразные возможности уровня настольных систем, Java-клиент обладает и недостатками. В частности относительная негибкость настройки и расширения клиентского интерфейса - внешний вид приложения и компоновка отдельных элементов ГИС предопределена. Кроме того, используемые Java-классы - это транслированный код и для изменения, расширения возможностей приложения необходима перекомпиляции и относительный уровень программирования на Java.
Можно предположить, что будущее ГИС в Интернет связано с тонкими клиентами, обладающими собственным клиентским интерфейсом и уникальными дизайнерскими решениями. К тому же уровень современных Интернет-браузеров позволяет строить клиенты, обладающие богатыми функциональными возможностями. Поэтому для реализации СИС «Весь Академгородок» было выбрано решение использующее так называемое ASP-расширение сервера, а клиентская часть реализуется средствами самих браузеров. При этом преследовались следующие цели:
реализация тонкого клиента средствами HTML, позволяет использовать систему без установки дополнительного программного обеспечения;
работа с бизнес-компонентами на легких в использовании скриптовых языках позволяет дополнять, изменять реализованный код минимальными усилиями;
реализация бизнес логики в виде ActiveX-компонент позволяет расширять функциональные возможности системы систему, реализуя новые компоненты.
ArcIMS ASP-расширение (ActiveXConnector) - это библиотека ActiveX-компонент. ActiveXConnector позволяет использовать возможности ArcIMS-сервера из любого контейнера, поддерживающего ActiveX-технологию. На его основе можно строить как stand alone приложения на C++ и Visual Basic, так и работающие под управлением Web-сервера с использованием технологии Active Server Page.
Использование многослойной архитектуры позволяет разместить компоненты промежуточного звена и непосредственно сервер ArcIMS на разных машинах. В результате ActiveXСonnector позволяет работать с любым удаленным ArcIMS-сервером. Использование простого скриптового языка VBScript позволяет легко менять, дополнять код, что делает систему расширяемой для реализации новых возможностей. С помощью ActiveXConnector можно реализовать богатый набор функциональных возможностей, начиная от простого позиционирования и смены видимости слоев, до полного переопределения ренджирующих настроек текущего сервиса и подключением новых наборов данных.
Рассматриваемая архитектура включает 3 звена: клиентский интерфейс - уровень представления данных, промежуточное звено - уровень бизнес логики приложения и серверный уровень.
Клиентская часть реализована средствами Интернет-браузеров. В силу различной реализации протокола HTML 4.0 и системы DOM браузерами, ведется два параллельных набора HTML-страниц - для Microsoft Internet Explorer и Netscape Communicator. Такие клиенты, являясь тонкими, обрабатывают только функции клиентского интерфейса, а все данные отправляют на сервер. Результаты отработки запросов интерпретируются браузером и отображается в приложении. На данный момент запланирована реализация таких функций, как масштабирование, позиционирование, идентификация объектов, выполнение атрибутивных запросов. Но это далеко не полный перечень возможностей системы, при необходимости он может быть легко расширен, благодаря выбранному архитектурному решению.
Уровень промежуточного звена представляет собой набор ASP-страниц, работающих под управлением Microsoft IIS и библиотеки ActiveXConnector. На этом же уровне может быть реализована работа с другими продуктами или СУБД. ASP-технология позволяет легко интегрировать возможности различных систем в единое приложение.
Серверный уровень - это непосредственно ArcIMS-сервер и используемые данные.
Что касается вопросов развития функциональных возможностей системы, то оно напрямую связано с развитием основного серверного продукта. Это своего рода ограничение может быть снято одновременным использованием сервисов разных приложений. Так, для реализации специфического сервиса может быть установлено дополнительно программное обеспечение, а использование ASP на промежуточном уровне позволяет скрыть такую реализацию от конечного пользователя. В качестве примера можно привести те же реляционные СУБД как альтернативные хранилища данных и использование ADO для доступа к ним. Так, на промежуточном уровне может быть размещена реляционная СУБД, позволяющая хранить расширенную информацию об объектах или атрибутивные данные клиента. Реализация открытых шлюзов в Web позволяет обновлять эту информацию самим пользователям или организациям, публикующим данные. Кроме того, могут быть решены такие вопросы как использование серверных и локальных данных в едином режиме, поддержка режима редактирования атрибутивных и геометрических данных клиентом.
К тому же развитие самих Интернет-браузеров позволяет реализовать все более интересные возможности. Так, например, развитие протокола SVG (scalable vector graphics) позволит перенести визуализирующую часть на клиента и обеспечить работу с векторными потоками данных.
Англоязычная версия системы под названием The whole of Akademgorodok (рис. 2) уже доступна в сети Интернет [5]. Разработчики не сомневаются в успешном развитии системы. «Весь Академгородок» - это не просто новая ГИС под Интернет.
Уникальные особенности Академгородка позволяют рассматривать его как идеальную стартовую площадку для развития Интернет-проектов, а проект «Весь Академгородок» - как удобный полигон для отработки новых идей и технологических решений. Реализация же отработанных решений в новых коммерческих Интернет-проектах - лишь вопрос наличия заинтересованных партнеров и инвесторов.
Ссылки:
1. Описание программного продукта ArcIMS на WWW-сервере компании ESRI - http://www.esri.com/software/arcims/index.html
2. Проект НаКарте - http://www.nakarte.ru
3. Проект PriceNet - http://www.pricenet.ru/about.asp
4. Паринов С.И. Интернет для предприятий: "будь готов или умри", - http://www.ieie.nsc.ru:8100/parinov/eco99.htm
5. Интернет-проект НРЦГИТ «The whole of Akademgorodok» - http://www.giscenter.ru/academ
См. также: Каталог Программного обеспечения: - ArcIMS