Распределенные ГИС

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

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

Рис. 8

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

Рис. 9

Одной из ключевых проблем распределенных систем является генерация уникальных идентификаторов для новых объектов. Решить эту проблему может помочь специальный механизм идентификации объектов в распределенной среде. Все множество идентификаторов разделяется на группы идентификаторов, каждой из которых присваивается глобальный уникальный идентификатор ГУИД (генерацию таких идентификаторов обеспечивают штатные функции операционной системы Windows). Любая база данных ГИС сопровождается таблицей групп идентификаторов, элементы которых используются в базе данных (рис.10а). Идентификаторы объектов состоят из двух частей: индекса группы идентификаторов и номера идентификатора в пределах группы (рис.10б). Одна из групп идентификаторов базы данных используется для генерации новых идентификаторов (рис.10в). При переполнении номеров идентификаторов в пределах этой группы, система создает новую группу идентификаторов с новым ГУИД и сбрасывает номер объекта в пределах группы в начальное состояние. С этого момента созданная группа используется для генерации новых идентификаторов.

Рис. 10

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

Рис. 11