Cтатьи и комментарии

Геопрофи, №2 2011

Технология публикации пространственных данных на геопорталах

О.В. Беленков (ЗАО КБ "Панорама") В 1986 г. окончил факультет прикладной математики Харьковского ВВКИУРВ им. Н.И. Крылова. После окончания училища служил в рядах ВС РФ. С 2006 г. по настоящее время — заместитель генерального директора, главный конструктор ЗАО КБ "Панорама".
http://geoprofi.ru/news11/News_5344_74.aspx

Как это работает

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

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

Данные картографической основы и различные тематические данные собираются и накапливаются в базах пространственных данных. Значительный объем данных представлен в виде таблиц, содержащих текстовые и числовые атрибуты и списки координат объектов. Чтобы наглядно отобразить эти данные, необходимо их обработать и сформировать графический файл в одном из распространенных форматов (JPEG, PNG, GIF, TIF), который будет отображен на компьютере пользователя.

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

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

Набор тайлов содержит матрицу графических изображений стандартных размеров, как правило, в файле формата PNG. Размер изображения обычно порядка 256 на 256 точек. Объем отдельного файла обычно порядка 5 – 15 Кбайт.

На каждый масштаб представления данных строится отдельная матрица тайлов. Если пользователю предоставляется возможность выбирать отображаемые слои (снимки, карты, тематические слои), то на каждый слой в каждом масштабе строится своя матрица в пределах территории, на которую имеются данные слоя. Сложение отображаемых слоев производится в процессе отображения данных на клиенте с применением прозрачных цветов.

Данные, которые были запрошены пользователем в сеансе работы, повторно не передаются, а временно хранятся на компьютере пользователя.

Таким образом, существенно минимизируется объем передаваемых данных, а скорость работы минимально зависит от числа подключившихся пользователей. На таких принципах работает программа GIS WebServer версии 4, разработанная КБ «Панорама».

При обращении пользователя к некоторому участку изображения из web-браузера (тонкий клиент) выполняется запрос к ГИС web-серверу, который по координатам точки выбирает данные из базы пространственных данных и передает пользователю для отображения в виде текстовых справок, диаграмм, мультимедиа и т.д.

Если пользователь работает в ГИС (толстый клиент), поддерживающей стандарты OGS Web Map Service Interface и OGS Web Feature Service Implementation Specification, то в ГИС будет накапливаться соответственно растровое или векторное представление пространственных данных для их отображения и обработки. Такой режим работы поддерживается в ГИС «Карта 2011» и других продуктах КБ «Панорама». Для передачи данных по стандарту OGC WMS на web-сервере дополнительно устанавливается программа GIS WebService, входящая в состав GIS WebServer.

Как подготовить данные

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

Если объем данных небольшой (десятки мегабайт) и данные меняются редко, то достаточно один раз построить наборы тайлов и разместить их на геопортале. При изменениях в базе пространственных данных необходимо выполнить перестроение тайлов.

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

Чтобы ускорить построение тайлов необходимо распределить работу на несколько компьютеров в сети. Программа ImageryCreator, разработанная КБ «Панорама» позволяет выполнять параллельную обработку данных на нескольких компьютерах. На одном компьютере (процессоре) может выполняться построение отдельных рядов тайлов в матрице заданного масштаба. Выполняя работу на пяти компьютерах можно сократить время построения тайлов в 5 раз.

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

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

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

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

Такой подход на порядок ускоряет процесс подготовки данных для публикации в web.

Для формирования временной базы данных применяется программа Мониторинга базы данных DbMonitor. Программа DbMonitor может обрабатывать базы данных различных типов (Oracle, MS SQL Server, FireBird и другие). Поддерживаются типы данных OpenGIS Spatial (стандарта Open GIS Consortium).

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

Одновременно может выполняться несколько программ мониторинга базы данных и анализировать различные виды данных для формирования графического представления.

Параллельно программа ImageryCreator по результатам обновления координат или условных знаков отдельных объектов в специализированной базе данных обновляет соответствующие тайлы. Для ускорения поиска обновленных объектов также применяется журнал транзакций специализированной базы данных.

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

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

С результатами обновления координат или условных знаков объектов в специализированной базе картографических данных могут работать не только пользователи web-браузеров, но и различные ГИС-приложения, включая ГИС «Карта 2011». При этом пользователи ГИС-приложений могут подключаться через web-протоколы удаленно, используя возможности программы ГИС Сервер 2011.

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