В той или иной мере структура всех известных в России муниципальных ГИС-проектов была похожа. Есть выбранный способ хранения пространственной и описательной информации, есть инструмент создания и корректировки пространственных объектов (инструментальная ГИС), есть специфицированные по отраслям приложения, которые создавались на основе в разной степени стандартных систем публикации данных с использованием внутреннего компонента визуализации (чаще — ActiveX). Это давало необходимую гибкость в построении системы, в том числе и ценовую. Но со временем известные ГИС-бренды перенесли «фокус» своих исследований на создание web-клиента — вследствие взрывного развития интернет-технологий и ожидаемого резкого повышения качества каналов связи. С каналами связи у нас все развивается совсем не так быстро, как хотелось бы, да и функционал web-приложений попрежнему имеет естественные ограничения. Вот и оказалось, что-либо необходимо переносить всю отраслевую функциональность на инструментальную ГИС (что по сути и предлагают Intergraph G/Technology и последовавший за ним Autodesk Topobase), резко поднимать и стоимость системы, и требования аппаратным ресурсам на клиентском рабочем месте, и квалификационные требования к пользователям. Либо базироваться на системах публикации данных почти десятилетней давности (видимо поэтому старый добрый Autodesk MapGuide 6.5, на который опиралось предыдущее поколение UrbaniCS и UtilityGuide, поставляется до сих пор).

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

В результате этих усилий структура ГИС-проекта от компании CSoft выглядит на сегодняшний день так, как показано на рис. 1.

Рис. 1 Рис. 1

При этом разработанная нами собственная система публикации данных позволила сделать мощный рывок в функционале созданных на ее основе отраслевых приложений. Во-первых, ушла в прошлое необходимость дважды — сначала в инструментальной ГИС, а потом в системе публикации — собирать так называемый проект, в котором содержатся ссылки на источники данных и стили отображения. Это печальное обстоятельство было следствием жесткой ограниченности набора стилей системы публикации данных, которая, в свою очередь, была вынужденной жертвой ради повышения производительности отраслевых приложений. Но, как говорится в известной рекламе, «все меняется, когда приходит он». Теперь собранный в инструментальной ГИС CS MapDrive проект автоматически транслируется во внутренний проект системы публикации данных — с точным сохранением всех стилей, как бы сложны они ни были. Для корректировки проекта, используемого для отраслевых приложений, можно пойти по «большому кругу», то есть снова изменить проект CS MapDrive и ретранслировать его (например, для UrbaniCS) еще раз, а можно внести коррективы и непосредственно в компоненте для создания и редактирования проектов MapEditor, бесплатно поставляемом вместе с UrbaniCS или любым отраслевым приложением семейства UtilityGuide (рис. 2).

Рис. 2 Рис. 2

За счет ресурсов новой системы публикации появился и такой востребованный для крупных проектов функционал, как выбор объекта «булавкой», когда при помощи встроенных пространственных запросов по «клику» формируется список классов пространственных объектов, находящихся на заданном расстоянии от места «клика», — с учетом масштабных ограничений по видимости и с автоматическим пересчетом проекций и систем координат там, где это требуется. На рис. 3 видно, что по мере увеличения меняется и список классов объектов, из которого можно выбрать нужный, и масштабный ряд, причем сложный переход от обычных географических систем координат к декартовым, характер ным для высокоточных городских планов, происходит автоматически, за счет встроенных механизмов Oracle Spatial.

Рис. 3 Рис. 3

Преодоление «стилистической пропасти» дало возможность автоматически формировать любые документы со сложной графической составляющей (например, пресловутый ГПЗУ) непосредственно из UrbaniCS. Поэтому логичной и уместной выглядит разработка удобной системы подготовки документа к печати, с предварительным просмотром и опциональным разбиением на листы (рис. 4), а использование пространственных запросов для автоматического внесения информации по ограничениям и обременениям в карточку объекта и вовсе подняло производительность труда до максимума.

Рис. 4 Рис. 4

По мере развития систем ИСОГД от «точечных», муниципального уровня, до интегральных, регионального уровня, преимущества описываемой технологии стали еще более очевидными. В самом деле, региональная ИСОГД должна включать в себя полный набор муниципальных ИСОГД и отображение объектов регионального уровня, в том числе расположенных и на межселенной территории. Отсюда возникает естественное стремление развернуть систему как совокупность муниципальных серверов, содержимое которых регулярно обновляется на интегрирующем сервере уровня субъекта РФ. Специалисты в реляционных БД к месту вспомнят понятие репликации данных… и будут, в общем, правы. Потому что использование стандарта Oracle Spatial дало возможность распространить понятие репликации данных и на пространственные данные. Но обычная репликация требует постоянного и надежного соединения между серверами, чего мы в нашей текущей инфраструктурной ситуации вряд ли вправе ожидать. А передавать в региональный центр просто полную копию обновленной БД, конечно, можно, но ни о какой оперативности обмена данными тогда и речи быть не может, не говоря уже о проблемах с «режимностью». Проблема была успешно решена с помощью разработанного нашими специалистами механизма «тонких offline-репликаций», который по обычным (весьма скромным) каналам связи позволяет передавать только минимальный бинарный массив изменений БД. Помимо достижения заявленного результата, были получены и дополнительные выгоды: если даже такая репликация и будет кем-то перехвачена со злым умыслом, воспользоваться ею будет просто невозможно без предыдущего и текущего состояния БД. При этом возможность применения всех известных аппаратных средств защиты (например, CryptoPro) позволяет использовать открытые каналы связи.

Позвольте, у меня все ходы записаны!

И. Ильф, Е. Петров «Двенадцать стульев»

Представленный в предыдущих публикациях принцип «машины времени» на основе Oracle Workspace Manager получил дальнейшее развитие в новых версиях UrbaniCS. Он, собственно, и дал уникальную возможность построения упомянутых «тонких offline-репликаций». Администратор СУБД имеет возможность гибко определять классы пространственных объектов ИСОГД, которые подлежат частому изменению, а значит и «реплицированию»; таким образом снижаются и требования к оборудованию, и объем БД, и требования к каналам связи при передаче репликаций.

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

Но практика показала, что иногда вполне достаточно просматривать последовательно не сами стадии изменения пространственного объекта (строения, участка), а просто перечень таких изменений — с указанием даты и имени пользователя, эти изменения производившего (так называемое «журналирование»). Эта опция очень полезна в разрешении нередко возникающих конфликтных ситуаций, а весь жизненный цикл объекта ИСОГД доступен из интерфейса UrbaniCS (рис. 5).

Рис. 5 Рис. 5

Совы не то, чем они кажутся.

«Твин Пикс»

Ну, а теперь собственно о web-клиентах. Вам никогда не случалось задумываться, почему так часто и не всегда к месту говорится о web-решениях, которые не требуют установки на клиентском терминале ничего, кроме web-браузера, а вот реальных приложений, оперирующих действительно миллионами объектов, в природе замечено не было? На это могут быть разные объяснения разных экспертов, а я рискну предположить, что дело все же в слабостях базовых технологий, позволяющих найти сотню пиццерий в десятке штатов, и ничего более. В первую очередь web-решения разрабатывались и разрабатываются под бизнесприложения (отличным примером является действительно очень удобная система Google Maps). А возможность выхода на требуемые в нашем случае мегаобъемы данных обеспечил… разумеется, Oracle, являющийся, по сути, синонимом понятия масштабируемости. Речь здесь идет о технологии Oracle MapViewer, в которой пространственные данные, хранящиеся непосредственно в Oracle Spatial, «на лету» или заранее генерируются в наборы мозаик. Мозаики составлены из множества «растриков» высокого разрешения, а каждая из мозаик соответствует определенному вами уровню увеличения при просмотре карты. При таком подходе любой запрос из браузера вызывает генерацию или извлечение из заранее подготовленного набора серии картинок и отправку их клиенту. Этот подход только кажется простым: добавьте сюда автоматическую генерацию области «клика» вокруг объекта карты, чтобы его можно было выбрать, хоть и на растре, возможность физического расположения генераторов мозаик и кэш-памяти (Oracle MapViewer TileServer и Cache Server) на разных серверах… и вот он, простор для творчества. В базовой технологии, представленной Oracle, не хватало только универсального компонента просмотра с обработкой событий на стороне сервера… но прошедшее время в глаголе здесь употреблено не случайно: за полтора года в результате совместной работы программистов CSoft и группы разработчиков Oracle Spatial был создан UrbanView. Это Java-приложение позволяет за счет умелого использования серверных ресурсов визуализировать любое количество динамических объектов на очень скромных клиентских рабочих местах.

С одной стороны, UrbanView является прекрасным компонентом в палитре программных средств ИСОГД, которого как раз и недоставало и для пресловутого «информирования населения», и для обеспечения возможности простого доступа к данным ИСОГД различным пользователям, не обладающим глубокими навыками в компьютерной области. Зато привычных для web-приложений ограничений по объемам информации здесь нет и в помине: например, в этом году в опытную эксплуатацию заказчикам будет передан web-портал для ИСОГД г. Новосибирска, в котором вся (несколько сот тысяч объектов) совокупность зданий, улиц, земельных участков, территориальных и функциональных зон будет в реальном времени доступна пользователям сначала закрытого, а потом и открытого сегментов сети (рис. 6), причем каждый объект тестировался в динамике, с возможностью мгновенного представления своей атрибутивной информации.

Рис. 6 Рис. 6

Кроме того, описанная возможность использования любых устройств с любой операционной системой как нельзя лучше подходит еще и для обеспечения информацией мобильных бригад любого предназначения. Всегда очень впечатляет демонстрация практически мгновенной визуализации тех самых сотен тысяч объектов на смартфоне или на нетбуке типа ASUS EEE PC, где установлен Linux, а жесткого диска нет вовсе. Отсутствие жесткого диска в этом случае показательно вдвойне: во-первых, нет механических частей, а значит устройство не боится падений и вибраций… а во-вторых, это подчеркивает невозможность хищения информации: красть просто нечего, даже по фрагментам.

Эта «столбовая web-дорога» открывает новые захватывающие перспективы. Ведь мы получаем возможность применить всю мощь известного, но для других отраслей, аппарата экспресс-анализа данных Business intelligence, с OLAP-кубами данных и панелями анализа (dashboards), в которых разворот пользователем многомерного куба без всяких сложных SQL-запросов приводит не только к автоматическому перестроению таблиц, графиков и диаграмм, но и к обновлению тематических карт по технологии Oracle MapViewer (рис. 7). А это значит, что таинственные и мало кем виденные «ситуационные центры стратегического делирования» на поверку оказываются просто верхним аналитическим уровнем ИСОГД. Конечно, если только речь идет о представленной технологии ее построения…

Рис. 7 Рис. 7

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

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

Это очень дорого и не подходит для небольших объектов внедрений! Наша ИСОГД может быть установлена на любой версии СУБД Oracle: от бесплатной Oracle Express Edition до наиболее мощной Enterprise Edition. Между двумя ценовыми полюсами много промежуточных вариантов, а само программное обеспечение ИСОГД при переходе от «маленьких» СУБД к «большим» не требует изменений.

Это западная технология, а нам нужна именно своя, отражающая нашу специфику! Как, используя хорошую технологию, построить свое, адаптированное под местные реалии решение, продемонстрировал автоконцерн Skoda. Есть, конечно, АвтоВАЗ… на любителя…

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

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

Александр Ставицкий,
директор по ГИС-направлению
группы компаний CSoft,
к.т.н.
Тел.: (495) 069−4488
E-mail: asta@csoft.com