Управление данными и транзакции

Платформа ArcGIS и база геоданных

ArcGIS является цельной, интегрированной ГИС-платформой. Это система управления информацией, организации и визуализации карт и данных, анализа отношений и закономерностей в любых географических данных. Она позволяет разрабатывать, планировать и выполнять прогнозирование. Вы можете принимать информированные решения на базе анализа, предпринимать действия, а также делиться этой информацией в организации и вне ее. Таким образом, платформа одновременно предлагает способ управления системой данных и системой анализа. ArcGIS также позволяет воспользоваться веб-сервисами для привлечения отдельных лиц, команд, отделов и целых организаций к изучению данных. Он обеспечивает сотрудничество между распределенными системами и людьми, и является единственной платформой с полноценной веб-ГИС: системой систем.

Платформа ArcGIS - система систем

Платформа ArcGIS обладает гибкостью и поддерживает множество способов реализации, в зависимости от необходимости, от настольной системы, до серверной, с онлайн-подключением к многопользовательской системе с порталом и ArcGIS Online. Вы можете использовать любую комбинацию этих компонентов. Это завершенная облачная картографическая платформа, уже содержащая приложения и ресурсы. Для разработчиков доступны API, позволяющие создать собственные решения и еще больше расширить возможности ArcGIS. Дизайн платформы предназначен для поддержки любой емкости, которая может потребоваться как отдельным пользователям, так и командам или организациям, т.е. она подходит как индивидуальным исследователям, так и международным компаниям.

Способы реализации платформы

Ядром платформы, и любой ГИС, является управление данными и их создание. Для управления географическими данными, в ArcGIS Pro используется база геоданных. В базах геоданных хранится пространственная и не пространственная информация, организованная в наборы данных. В базе геоданных могут находиться такие наборы данных, как таблицы, классы объектов, классы отношений, топологии и инженерные сети. Многопользовательская база геоданных хранит данные в реляционной базе данных и использует ее функциональные возможности для поддержки хранения крупных наборов данных и организации эффективного многопользовательского доступа к данным. Она также позволяет публиковать данные в виде сервисов на портале или в ArcGIS Online.

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

  • Проектирование базы геоданных
  • Создание базы геоданных
  • Начальная загрузка данных - на этом этапе происходит загрузка данных по интересующему региону. Загружаемые данные могут быть получены из существующих корпоративных баз данных, порталов или библиотек карт, из онлайн-источников, таких как Living Atlas, или могут быть куплены.
  • Редактирование и управление данными - на данном этапе происходит изменение существующих данных, и при необходимости в базу данных добавляются новые данные.

    К изменениям, которые могут быть произведены в базе геоданных в процессе редактирования и управления данными, можно отнести:

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

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

Что такое транзакция?

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

Транзакции обладают следующими стандартными свойствами, называющиеся ACID, на которые опираются пользователи и приложения в процессе работы.

Атомарны — транзакция обладает поведением по типу «все или ничего». Если транзакция закрепляется (фиксируется), то в базе данных будут применены все произведенные в ней изменения. Если будет произведен ее откат, то никакие изменения не будут применены.

Непротиворечивы — транзакция оставляет базу данных в непротиворечивом состоянии.

Сериализуемы — изменения, производимые в рамках транзакции, могут быть изолированы от других транзакций до тех пор, пока данная транзакция не закрепит эти изменения. Другие пользователи не могут видеть действий, производимых в рамках работы транзакции, пока она находится в состоянии выполнения.

Долговечны — как только транзакция будет закреплена, результаты ее работы будут постоянны.

Для реализации этих свойств СУБД используют различные механизмы блокировок: это производится для того, чтобы несколько транзакций, производимые параллельно, не влияли друг на друга или были изолированы.

Транзакции и географические данные

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

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

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

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