УДК 681.518
И.М. Михаилиди
Применение web-технологий для создания распределенных ГИС
Технологии, объединяющие обработку и анализ пространственной и описательной информации, известны как геоинформационные [1].
Учитывая тот факт, что создание или приобретение пространственных данных обходится очень дорого и к тому же поддержание в актуальном состоянии соответствующих тематических слоев по силам только специалистам в соответствующих областях, самым рациональным решением в пределах города или региона было бы создание распределенной многопользовательской территориальной ГИС, имеющей несколько уровней использования. Одной из ее частей, вероятно, самой востребованной, должна стать информационно-справочная система по территории.
В настоящее время происходит активное объединение ГИС- и интернет-технологий. При этом web-технологии являются наиболее перспективными и используемыми, так как они позволяют строить системы хорошо масштабируемой архитектуры и легко обеспечивают интеграцию приложений [2].
Для создания распределенных приложений с использованием web-технологий обычно используется многоуровневая архитектура приложений, которая предполагает создание между клиентом, реализующим пользовательский интерфейс, и сервером баз данных сервера приложений, на который ложится основная нагрузка по обеспечению механизмов исполнения транзакций и разделения уровней доступа.
Web-технологии основаны на гипертекстовом подходе, когда роль клиентского приложения выполняет стандартный web-браузер, что существенно расширяет круг пользователей ГИС и избавляет от необходимости приобретения дорогого специализированного лицензионного программного обеспечения и пространственных данных. Для создания ГИС-приложений, работающих через Интернет, используются различные технологии формирования динамических web-страниц. Это технологии, расширяющие функциональность web-серверов: CGI, ASP, PHP; расширения самого языка формирования web-страниц Dynamic HTML [3], а также возможность добавления к браузерам нестандартной функциональности с помощью программирования Java-
апплетов, документов Active X и программ на языках Javascript, Vbscript. В первом случае обработка клиентских запросов выполняется на сервере, в двух других - часть работы по формированию web-страницы переносится на клиентское приложение.
Преимущества первого подхода - в его универсальности и фактической независимости от типа web-браузера. Однако за универсальность приходится платить относительной медленностью реакции системы и некэшируемостью страниц.
Так как для ГИС запрос всегда достаточно сложен и его результатом является растровое или векторное изображение, то очевидно, что это ведет к большим затратам трафика. Второй подход характеризуется зависимостью от типа web-браузера, так как не все web-браузеры поддерживают DHTML или исполнение Java-апплетов, однако достоинство этого подхода в том, что, хотя первоначальные запросы пользователя исполняются медленно, так как идет процесс загрузки апплета или очередной порции информации на компьютер клиента, но последующие запросы часто не требуют обращения к серверу и, следовательно, выполняются намного быстрее, чем в первом случае. При такой технологии используется возможность кэширования запроса [4]. Для создания гибких ГИС-приложений используется комбинация этих подходов.
В многопользовательской геоинформацион-ной системе ГИС-сервер приложений выполняет следующие функции [5]:
- принимает запросы пользователя на формирование изображений;
- строит на основании прав доступа пользователя запрос к серверу пространственных данных;
- выполняет пространственные операции над данными;
- адаптирует данные к размерам экранной области клиента;
- передает адаптированные данные клиентскому приложению пользователя.
По типу передаваемых пространственных данных методы web-публикации можно разбить на «векторный подход» (передача данных в векторном формате и визуализация их на
Применение web-технологий для создания распределенных ГИС
стороне клиента) и «растровый подход» (передача растровых изображений).
Существует также подход с передачей пользователю заархивированных данных, находящихся в форматах ГИС. При этом пользователь должен иметь профессиональное лицензионное программное обеспечение. Технологии, реализующие векторный поход, подразделяются на следующие подгруппы по способу визуализации данных:
- визуализация данных в специализированных web-браузерах, обладающих ограниченной функциональностью настольной ГИС (например, ArcIMS - ArcExplorer - ESRI [6]);
- визуализация данных в стандартных web-браузерах с помощью Active Х компонентов (WHIP! Фирмы Autodesk);
- визуализация данных в стандартных web-браузерах с помощью Java-апплетов (WebMap фирмы «Резидент»).
Несмотря на то, что векторный подход является более приемлемым для использования в ГИС, так как обеспечивает масштабирование изображения без потери качества, дает возможность управлять видимостью слоев в многослойных изображениях, настраивать условные обозначения, а также комбинировать в изображении локальные и внешние данные, он пока широко не используется, ввиду отсутствия в html-стандартов описания векторных данных.
Имеются следующие варианты реализации «растрового подхода» по способу получения изображения:
- поставщиком данных является специализированный сервер ГИС-приложений (например, Arcview Internet Map Server или ArcIMS 3.0, которые взаимодействуют либо с базовой ГИС, как в первом случае, либо непосредственно с базами пространственных данных, как во втором случае), формирующий растровые данные динамически, «на лету»;
- растровые изображение формируются в ГИС заранее, и доступ к ним организуется непосредственно web-сервером (например, создание растровых карт для web-публикации c помощью расширения Image Mapper для ArcView).
Одно из основных преимуществ такого подхода - поддержка растровых форматов в стандартном HTML. Но при этом любая операция по изменению масштаба карты или перемещению в какую-то точку карты требует заново сформировать изображение, что приводит к частым обращениям к серверу и пересылкам больших объемов данных.
Так как в большинстве случаев при масштабировании карты ее нагрузка меняется, то и для векторных технологий обращение к серверу после каждого запроса на масштабирование неизбежно. В противном случае, клиентский компьютер придется «утяжелять» до функциональности стандартной настольной ГИС. Еще одним преимуществом методов web-публикации пространственной информации растрового типа является использование всего арсенала изобразительных средств базовой ГИС.
Барнаульский городской центр информационных технологий (БГ ЦНИТ) Алтайского государственного университета ведет работы по созданию распределенных ГИС с использованием web-технологий. В частности, БГ ЦНИТ в 1999 г. в рамках выполнения проекта федеральной научно-технической программы «Научное, научно-методическое, материально-техническое и информационное обеспечение системы образования» создан web-атлас Алтайского края, который может рассматриваться как первая версия территориальной информационно-справочной системы края. Цель проекта - сделать доступным для массового использования тематический атлас-справочник Алтайского края с упрощенным ГИС-подобным интерфейсом. Атлас состоит из набора тематических карт, разбитых по разделам: «Административное деление», «Природа», «Экономика» и «Демография». Атлас использует топографическую основу Алтайского края масштаба 1:500 000. Тематические слои атласа подготовлены по бумажным вариантам карт ИВЭП СО РАН (природное зонирование) и материалам статистических справочников (экономика, демография).
Использован вариант передачи данных в растровом виде со статической подготовкой данных в базовой прикладной ГИС. Этот вариант является наиболее простым в реализации, не требует дорогостоящего программного обеспечения, такого как Агс!МБ, и учитывает такие преимущества, как возможность использовать в качестве клиентского приложения обычный браузер и создавать сложные карты, используя возможности базовой ГИС. Периодичность обновления карт не превышает одного раза в год, что позволяет использовать статические изображения карт в периоды между обновлениями. Для территории Алтайского края вполне достаточно двух масштабных уровней, чтобы наглядно отобразить любой район края в любом разрезе.
Таким образом, было выбрано простое, но достаточное для поставленной задачи решение,
когда все карты формируются заранее в двух базовых масштабных рядах: общем обзорном (1:3 000 000) - для отображения всей территории края и детальном (1:500 00 - 1:700 000) - для изображения отдельных районов. Для самых больших районов - Чарышского и Первомайского - используются более мелкие масштабы (1:1 200 000).
Геоинформационная система web-атлас «Алтайский край» предоставляет web-пользователю возможности по выбору нужных карт, масштабированию и перемещению по карте, отображению легенды и получению информации по выбранным объектам и состоит из базовой прикладной ГИС «Алтайский край», web-сервера и клиентского web-приложения, реализующего интерфейс пользователя и выполняющегося в web-браузере. Базовая прикладная ГИС автономно подключается эпизодически при обновлениях базы данных. Основное ее назначение - формирование и обновление базы изображений карт.
Процесс работы базовой ГИС выглядит следующим образом. Полученные в результате запросов карты экспортируются в д1^формат и сохраняются на диске для последующей web-публикации. Для того чтобы в дальнейшем в web-приложении можно было осуществлять масштабирование карт, перемещение и выбор объектов по карте, для каждой сохраняемой в растровом виде карты делается расчет областей для формирования сенсорных зон изображения. Значимыми являются объекты, имеющие информационное представление, доступное через клиентское web-приложение. Web-пользователь приложения имеет возможность просмотра описательной информации по этим объектам.
При вычислении сенсорных зон используются процедуры пересчета координат из системы реальных координат карты в систему координат окна отображения в клиентском приложении. Размер окна подобран так, чтобы карта полностью входила в окно web-браузера при разрешении экрана монитора 1024x768.
Координаты сенсорных зон запоминаются в Мар-тэгах html-документов, которые формируются автоматически в базовой ГИС вместе с растровыми изображениями карт и размещаются в каталоге для web-публикации. Для перекрывающих друг друга объектов формируются разные Map-тэги, и пользователю предоставляется возможность выбрать в диалоге нужный объект. При изменениях картографической или описательной базы и последующих замен растровых карт и соответствующих html-документов используется система настройки на нужный фрагмент карты.
Базовая прикладная ГИС реализована как расширение ArcView 3.1. В качестве web-сервера используется Microsoft Internet Information Server 5.0, поддерживающий механизм удаленного доступа к данным RDS (Remote Data Service). Клиентское приложение функционирует в стандартном web-браузере и обеспечивает выбор нужной карты;
двухуровневое масштабирование карты (уровень края, района), перемещение и выбор объектов на карте, предоставление информации по выделенным объектам, отображение легенды карты.
Основные управляющие элементы атласа -динамически раскрывающееся многоуровневое оглавление, предназначенное для выбора карт, и кнопочное меню, предоставляющие функции работы с картами (перемещение, масштабирование, информацию, легенду).
Клиентское приложение реализовано на Javascript с использованием объектной модели динамического HTML и механизмов удаленного доступа к данным RDS, дающего возможность проводить обработку части запросов на клиентской стороне.
В настоящее время первая версия web-атласа Алтайского края установлена на web-caйте экспериментального web-сервера Управления информатизации АГУ по http-адресу: tbs.asu.ru:8888.
Литертура
1. Сергеев А.Э. Поговорим о геоитранетике // Информационный бюллетень ГИС-Ассоциации. Москва, 1998. №3.
2. Геокадов А В. Geonet - почему нет? // Информационный бюллетень ГИС-Ассоциации Москва, 1998. №4.
3. Айзекс С. Dynamic HTML. Спб., 1999.
4. Патренина М.А., Койнов Е.А. Вопросы применения технологий ГИС/ИНТЕРНЕТ на примере справочно-информационной системы «Весь Академ-
городок» // Геоинформатика - 2000: Тр. Междунар. Конф. Томск, 2000.
5. Бычков И.В., Кухаренко Е.Л., Федоров Р.К. Принципы построения и программное обеспечение корпоративных ГИС на основе распределенных вычислений // Геоинформатика - 2000: Тр. Междунар. Конф. Томск, 2000.
6. Waxman A. ArcIMS 3.0 - An Application Developer’s Perspective, 2001.