Что нам стоит ГИС построить.
Сергей Матвеев, Ольга Аршава
ЗАО "Центр информационных технологий ТЕНАКС", Калининград, ЗАО "Русская промышленная компания", Москва
Геоинформатика никогда не относилась к числу динамично развивающихся направлений компьютерной индустрии. Более того, до недавнего времени большинство геоинформационных систем, занимающих ключевые сегменты этого рынка, можно было с уверенностью назвать "консервативными". Однако сейчас ситуация меняется - появившиеся за последние год-два новые тенденции в идеологии построения ГИС, переросли в реальные продукты, на базе которых можно строить более дешевые и боле эффективные решения. Большинство идеологических аспектов построения ГИС, связанных с новыми механизмами интеграции данных, безотносительно, являются они пространственными или семантическими; построением открытых систем обмена данными; созданием масштабируемых пользовательских рабочих мест; уже обсуждалось в ранее опубликованных статьях. Поэтому в этой статье мы уделим большее внимание практическим вопросами построения корпоративных геоиинформационных систем на базе одного из уникальных продуктов от компании Autodesk – Autodesk MapGuide. Речь пойдет о создании систем, число пользователей которых составляет 6-8 и более человек (возможно, несколько десятков рабочих мест), то есть о корпоративных системах, работающих от масштаба среднего предприятия до масштаба города или даже области и края. Однако некоторые подходы, обсуждаемые в этой работе, могут найти применение при создании отдельных рабочих мест в малых предприятиях, или организациях, где требуется минимальный ГИС- анализ.
Название статьи не случайно. Перефразировав известное выражение "что нам стоит дом построить", нам хотелось подчеркнуть, что при современных подходах, построить ГИС, пожалуй, не так уж сложно. И параллель со строительством дома не так уж абсурдна, как может показаться с первого взгляда: и объект реального строительства, и информационная система являются сложными инженерными конструкциями, создаваемыми коллективами специалистов. Оба объекта создаются на базе типовых решений и общепринятых технологических подходов, материалов и составляющих. Оба объекта адаптируются под требования пользователей ("жильцов") и под требования окружающей инфраструктуры. Однако строительство дома всегда начинают с проекта, в котором прорабатываются вопросы функциональности здания, его планировки, инженерных сетей, включения в городскую коммуникационную среду. В то же время ГИС часто выбирают, не задумываясь даже об эскизном проекте, как следствие – получается неподходящее решение.
В случае с использованием MapGuide, вопрос создания хотя бы эскизного проекта становится принципиально важным. Сам продукт, предлагаемый компанией Autodesk, представляет лишь общую технологическую основу для построения ГИС, отнюдь не являясь законченным решением. Поэтому прежде чем строить что-то с использованием MapGuide необходимо
Начать с проекта (или что важно сделать в первую очередь)
Конечно, также, как и в случае с новостройкой, создавая ГИС, мы хотим получить надежное решение, которое будет служить нам достаточно долго, будет функциональным, удобным, при необходимости модернизируем. И что самое важное, простым в эксплуатации. Сформировать эскизный проект не так уж сложно. Сначала нужно определить, какие данные будут использоваться в системе. Какие функции создания и обработки этих данных необходимы пользователям системы. Функции при этом могут разделяться на:
- функции поиска и просмотра информации;
- функции анализа данных (аналитические инструменты, инструменты создания тематических карт и построения отчетов);
- инженерные функции (связанные с добавлением и модификацией информации).
Список функций, представленный выше, немного больше, чем то, что обычно предполагается реализовать на MapGuide. Как правило, большинство компаний, предприятий, муниципалитетов, строящих свои решения на базе MapGuide, используют его только как основу для поисковой и справочной системы, иногда снабжая простыми аналитическими функциями. Инженерные решения предлагается строить на базе "инструментальных" ГИС. В некоторых случаях это справедливо. Однако многие задачи удается решить без использования инструментальных систем (таких как Autodesk Map, MapInfo, ArcView, Geomedia и пр.)! Конечно, существуют ситуации, когда без инструментальной системы не обойтись, но об этих ситуациях и предлагаемых в этих случаях решениях – в следующих публикациях.
После того, как Вы определились, какие функции на отдельных рабочих местах Вашего предприятия необходимо выполнять, можно подумать о том, какие данные (картографические и семантические) Вы будете получать, какие данные Вы будете передавать другим ведомствам и компаниям, наконец, какие данные Вы будете производить самостоятельно. Кроме того, важно определиться и с системой безопасности в вашей ГИС: кто из пользователей будет иметь доступ к той или иной информации, либо сможет ее модифицировать.
Последнее, что может потребоваться на начальной стадии - спроектировать, или попросту "нарисовать" удобный интерфейс пользователя для рабочих мест вашей ГИС.
Перечисленных шагов вполне достаточно для того, чтобы компания-интегратор начала работу над созданием нужной именно Вам системы, и также, как и в строительстве дома начала бы с
Создания фундамента (или как мы храним данные)
Фундамент дома не даром называется фундаментом. Это основа, поверх которой возникают стены и крыша, это основа, которая редко меняется при реконструкции. Надежность - основное качество фундамента. Неплохо также если конструкция фундамента при этом достаточно проста. Что является фундаментом построения ГИС? Безусловно, это модель хранения данных. Правильно выбранная модель позволит построить в дальнейшем функциональные и перестраиваемые решения. Функции, которые будет выполнять Ваша ГИС, будут изменяться. Будут появляться новые формы отчетов, более удобные аналитические инструменты, но работа с данными, скорее всего не будет значительно трансформироваться. Можно ли уже на первом этапе построить фундамент так, чтобы при развитии нашей системы не пришлось бы заниматься преобразованием и реструктурированием огромных массивов накопленной информации? С помощью идеологии, заложенной в MapGuide - можно!
Несмотря на достаточно длительную историю развития ГИС, одной из основных проблем остается проблема разнообразия способов хранения пространственных данных. В результате, выбирая то или иное ГИС-решение, мы оказываемся в "заложниках": использование других систем и программных средств становится затруднительным. Приходится осуществлять преобразование данных, использовать системы, в которых предусмотрены драйвера для доступа к различным форматам хранения карт, но и в этом случае мы неизбежно сталкиваясь с проблемами "нестыковки" всевозможных mif'ов, dgn'ов, dxf'ов. Кроме того, ряд индустриальных ГИС уходят от файловых хранилищ к СУБД, что является вполне естественным. Лидерство здесь, несомненно, принадлежит пространственному картриджу ORACLE. Существуют и другие хранилища, построенные на базе различных СУБД и реализующих различные модели хранения данных.
С плавным "перетеканием" картографии из файлов в СУБД появились и характерные для СУБД решения по преодолению "войны форматов". Действительно, рядом с СУБД существовали сначала ODBC-драйвера, затем OLE-DB провайдеры данных, наконец, механизмы ADO. При этом драйвера создаются непосредственно производителями хранилищ, а потребители получают четко обозначенный набор интерфейсов для извлечения и записи информации в хранилища.
Не так давно в области ГИС также появились спецификации на интерфейсы провайдеров данных для доступа к пространственной информации. Эти спецификации носят название OpenGIS (http://www.opengis.org). В разработке стандартов и спецификаций на сегодня принимает участие более 230 организаций.
К сожалению, OpenGIS на сегодняшний день достаточно редко используются производителями ГИС-решений. Одним из немногих продуктов, которые построены на базе этого стандарта, является Autodesk MapGuide.
MapGuide, созданный для публикации пространственных данных в интернет/интранет сетях, сам, для доступа к информации, использует именно механизм провайдеров данных.
Конечно, создание провайдеров является достаточно сложной задачей, тем не менее, компанией TENAX SOFT разработано несколько провайдеров данных для Autodesk MapGuide.
Один из таких провайдеров служит для доступа к данным, хранящимся в Oracle Spatial Cartridge, и позволяет работать как с реляционной, так и с объектной моделью.
Рисунок 1. Окно настройки TENAX ORACLE->MapGuide провайдера данных
Другой интересный пример использования провайдеров, связан с сочетанием различных, несовместимых друг с другом программных продуктов в рамках одного ГИС-решения. Предположим, что в одной из организаций в качестве средства для создания и редактирования карт используется ГИС Intergraph Geomedia. По мере роста архивов цифровых данных потребовалось дать доступ к этой информации в режиме просмотра и анализа широкому кругу сотрудников. Типичное решение, которое предлагает в таком случае компания Intergraph связано с использованием Intergraph WebMap. Однако для пользователя такое решение является слишком дорогостоящим. С другой стороны, удобный и в несколько раз более дешевый MapGuide несовместим с уже созданными другой системой хранилищами данных. Это означает, что для использования MapGuide придется постоянно осуществлять конвертацию, и ни о каком режиме "реального времени" говорить не приходится.
В данном случае задачу удалось решить, разработав универсальный провайдер данных, который дал доступ MapGuide к Access Warehouse – "родным" хранилищам GeoMedia напрямую. Так доступное по цене решение оказалось еще и качественным, те сотрудники, кто работал с хранилищами Intergraph могут продолжать с ними работать, а те, кто присоединился к этому процессу – с удовольствием и без каких-либо дополнительных затрат практически в реальном времени просматривают данные с помощью MapGuide.
Опыт создания провайдеров данных для Autodesk MapGuide, может применяться для "сращивания" решений, построенных на MapGuide, с любыми другими геоинформационными системами, используемыми в вашей организации. Кроме того, в стандартный "джентльменский" набор самого MapGuide входят провайдеры для работы со многими стандартными форматами данных различных ГИС (MapInfo. ArcView, Autodesk Map).
Из подобной схемы организации данных следует что:
- все данные, и пространственные и семантические будут "сложены" в общей базе данных, а значит легко обеспечить общие права доступа, создание резервных копий, обеспечить целостность и непротиворечивость данных, то есть избавиться от недостатков "классических" ГИС, где данные о картографии отделены от данных семантических;
- легко переходить от одного хранилища данных к другому по мере роста "объемов" вашей системы. На первом этапе можно использовать для хранения информации небольшие базы данных, например Microsoft Access или самых "маленьких" представителей семейства Oracle. По мере роста объемов данных и количества пользователей есть возможность буквально "на лету" перейти на новые хранилища информации, такие как Oracle Enterprise, Microsoft SQL Server и т.п.. Можно этот переход осуществлять поэтапно, сохраняя часть информации в одних хранилищах, часть - в других;
- в одном проекте можно интегрировать данные из разных источников без их преобразования. Все, что получено вами из других организаций в форматах ArcView, MapInfo, Intergraph GeoMedia, AutoCAD, Microstation и т.п. будет "на лету" интегрировано в ваш проект соответствующим провайдером данных.
Остается добавить что в "арсенале" наших "кубиков" для строительства ГИС существует множество различных провайдеров данных для организации любых хранилищ, а в "критическом" случае существует возможность создания новых провайдеров для тех хранилищ, и форматов данных, которые приняты в вашей организации.
После того, как фундамент нашей ГИС построен, можно перейти к строительству стен, и формированию "внутренней планировки" нашей ГИС. Здесь важно найти удобное решение для каждого из пользователей, то есть
"Подружиться с пользователями" (или как сделать простое решение для каждого потребителя)
Получить бюджетное и эффективное средство просмотра картографических данных – только первый шаг на пути к созданию сетевых ГИС'овских решений. Обычно пользователей, работающих с картами через MapGuide Viewer, быстро перестает устраивать позиция "наблюдателей". Известная народная мудрость об аппетите, который обязательно должен приходить во время еды, подтверждается и в случае программных технологий. Каждому из сотрудников обычно требуется решать свои, уникальные задачи, связанные с ведением баз данных в привязке к картам, расчетам на местности, анализом рельефов, подсчетом объемов, запасов, и… список может быть просто бесконечным.
Решение этой проблемы лежит "на поверхности". Еще несколько десятилетий назад, в эпоху "крупногабаритных" компьютеров, каждый сотрудник организации получал свою специализированную систему, которая называлась автоматизированным рабочим местом. Почему бы не повторить многолетний опыт? Тогда именно MapGuide вместе с провайдерами данных стал бы основой для создания единой корпоративной системы, имеющей множество специализированных АРМ'ов. Причем большинство АРМ'ов нужно делать "на вырост" – как известно, у тех кто работает, работы не убавляется, а значит завтра любое рабочее место может "начать расти".
Идея реализации масштабируемых рабочих мест проста – раз уж MapGuide Viewer является не более чем компонентой, которую необходимо "завернуть" в оболочку АРМ'а снабдив всеми необходимыми функциями, значит и функции эти надо изготавливать в виде отдельных компонентов. Приведем примеры трех таких решений.
Первое решение, несмотря на свою простоту, достаточно универсально – в задачах экономического и экологического анализа, в задачах ландшафтного проектирования и нефтеразведки встречается проблема построения изолиний по данным каких-либо измерений и исследований. Для решения проблемы достаточно "пристыковать" к MapGuide Viewer специальный модуль TENAX WEBLandTool:
Рисунок 2. Построение изополос при решении задач нефтеразведки в MapGuide Viewer
Теперь любые поверхности, изолинии и даже трехмерные изображения, можно строить на рабочих местах пользователей в интерент и интранет сетях.
Рисунок 3. Карта загрязненности Калининградской области тяжелыми металлами, построенная с помощью WebLandTool
Показательно то, что модуль, несмотря на его простоту использования, оказался полезным при решении самых разных задач, в том числе задач экологии (например, при анализе загрязненности Калининградской области тяжелыми металлами), при решении задачи анализа данных сейсморазведки (поиск нефти и газа), и даже для построения распределения продажи газет на территории города.
Другое, не менее показательное решение – модуль TENAX PathGuide – позволяет отыскать самый оптимальный путь в сети городских улиц:
Рисунок 4. Наиболее "экономный" маршрут посещения нескольких торговых точек
Еще одна задача – оценка параметров сетей водо-, тепло-, газо-, и энергоснабжения. Лежащие в основе расчета законы Кирхгофа позволяют практически мгновенно получать оценки параметров инженерной сети при ее изменении:Рисунок 5. Оценка параметров инженерной сети
Какие функции нужны пользователям, и как лучше организовать интерфейс для доступа к этим функциям, какая форма отчета предпочтительней - теперь могут решать сами пользователи. Но самое главное, что при этом удается действительно сэкономить, и не только на создании системы, но и на ее вводе в эксплуатацию – на обучение практически не уходит времени! Критерием "правильности" решения является простота инструкции по его применению. Идеальный вариант, если описание АРМ'а занимает не более 1 страницы формата А4.
Безусловно, MapGuide предназначен для просмотра и картографического анализа информации. Для того, чтобы модифицировать картографию, необходимо использовать инженерные системы. Стоимость их, безусловно, достаточно высока. И традиционно считается, что MapGuide здесь вряд ли поможет. В этот момент вполне может прозвучать фраза из одной известной рекламы "забудьте о правилах"! С помощью MapGuide можно решать задачи, связанные с обновлением пространственной информации, а иначе наше сооружение будет напоминать
Дом без дверей? (или как построить инструментальную систему)
Действительно, было бы очень жаль, если бы построенный нами дом имел бы исключительно окна (туда конечно можно заглянуть, но нельзя зайти), и не имел бы дверей. В реальных проектах очень часто необходимо добавить на карту, которую вы видите с помощью MapGuide Viewer, нужный объект (провести границу земельного участка, наметить площадь для земляных работ и т.п.). Это вполне допустимо с помощью комплекта модулей Master+ для MapGuide. Также, как и функции анализа данных, обсуждаемые выше, функции редактирования реализованы как отдельные модули, которые добавляют и модифицируют данные, находящиеся в хранилищах, и позволяют создавать/удалять/модифицировать графические примитивы. Схема работы в этом случае достаточно проста (единственное ее ограничение - она не работает в сети Интернет, как большинство других модулей, зато прекрасно решает свои задачи в интранет сетях предприятий):
Рисунок 6. Схема инженерного рабочего места, построенного на MapGuide. Зеленые стрелки – доступ к информации в режиме "просмотра", красные – в режиме "записи" через провайдеры данных или напрямую
Итак, мы достаточно подробно обсудили технологию построения корпоративной ГИС на базе Autodesk MapGuide. Такая "рецептура" строительства ГИС достаточно проста и эффективна, остается вернуться к заголовку статьи, добавив к нему знак вопроса:
Что нам стоит ГИС построить? (или затраты на создание системы)
Конечно, оценить затраты на создание системы не имея в руках соответствующего проекта, практически невозможно, но мы позволим себе сделать несколько грубых оценок, основываясь на ценовой политике Autodesk:
Рисунок 7. Снижение себестоимости рабочих мест.
Красные диаграммы – стоимость инженерных решений на базе Autodesk Map,
синий (светлый) – стоимость рабочих мест для "просмотра" карт на базе MapGuide,
темно-синий - стоимость инженерных рабочих мест на базе MapGuide, со специальными аналитическими функциями.
Выше приведенные графики можно существенно "улучшить" в плане стоимости инженерных рабочих мест, построив решения более гибко и с использованием других инструментальных средств, но об этом – в следующих публикациях, посвященных "строительству" менее масштабных ГИС-решений для малого, среднего бизнеса и небольших муниципалитетов.
Что же касается MapGuide, сравнивая стоимость одного рабочего места со стоимостью аналогичных решений, можно сделать выбор в его пользу. При этом вы получаете решение, предназначенное именно для вас, и решающее задачи вашей организации. В этом и есть залог успешной реализации проекта, ведь важно помнить, что Готового решения нет – нужно построить его, интегрировав разнородные средства для решения именно ваших задач обеспечив максимальную экономическую эффективность, создавая при этом открытую и масштабируемую систему.
- Комментарии