Доступно с лицензией Standard или Advanced.
Вы можете использовать инструмент геообработки Синхронизировать изменения в ArcGIS Pro, для синхронизации обновлений между двумя репликами баз геоданных, в направлении, указанном пользователем. В разделе описываются входные параметры этого инструмента и рассматриваются несколько ключевых опций.
Инструмент Синхронизировать изменения использует следующие опции:
Входные базы геоданных и реплика
- База геоданных 1 – база геоданных, которая содержит реплику для синхронизации. База геоданных может быть локальной, или может ссылаться на сервис геоданных на ArcGIS Server. Инструмент Синхронизировать изменения по возможности, автоматически заполняет параметры, исходя из настроек по умолчанию и информации, сохраненной в реплике. Если инструмент Синхронизировать изменения запускается по кнопке Меню , на панели Управление репликами или контекстного меню Распределенная база геоданных, база геоданных 1 будет содержать информацию о подключении из текущей рабочей области. Параметр реплики заполняется из первой же реплики, найденной в рабочей области. Если инструмент Синхронизировать изменения запускается с карточки, параметр реплики полчает имя реплики с карточки.
Примечание:
Вы можете опубликовать базу геоданных на ArcGIS Server как сервис геоданных только из ArcMap. В ArcGIS Pro такие сервисы баз геоданных можно использовать для репликации, если указать такой сервис в параметре База геоданных.
- Реплика – корректная реплика с реплика высшего порядка в пределах одной входной базы геоданных и с репликой низшего порядка в другой входной базе геоданных.
- База геоданных 2 – база геоданных, содержащая связанную реплику. База геоданных может быть локальной, или может ссылаться на сервис геоданных на ArcGIS Server. В дополнение, для базы геоданных 2, если информация о подключение к связанной реплике хранится в свойствах текущей реплики, инструмент будет или искать совпадающий файл подключения, или создавать временный файл подключения, на сновании информации, сохраненной в реплике. Для базы геоданных 2 будет указана эта информация, после чего будет выполнена проверка доступности подключения. Если подключение недоступно, база геоданных 2 будет определена как некорректная, и пользователь будет должен обновить информацию.
Направление
При синхронизации изменений вы можете выбрать направление, в котором будут отправлены изменения данных.
При работе с двухсторонними репликами доступны три варианта: вы можете отсылать изменения к связанной реплике, получать изменения из связанной реплики для переноса изменений в обоих направлениях. Если вы выберете оба направления, то изменения будут сперва отправлены по одному направлению, а затем будут отправлены в противоположном направлении, причем в рамках одной операции.
При работе с односторонними репликами доступна одно направление отправки изменений – либо из родительской реплики в дочернюю, либо из дочерней в родительскую. При работе с репликами открепления/прикрепления доступна опция отправки изменений только из дочерней реплики в родительскую реплику.
- Оба направления – изменения будут синхронизированы в обоих направлениях. Используется по умолчанию для двусторонних реплик.
- Из базы геоданных 1 в базу геоданных 2 – изменения будут синхронизированы из БГД 1 в БГД 2.
- Из базы геоданных 2 в базу геоданных 1 – изменения будут синхронизированы из БГД 2 в БГД 1.
Правила разрешения конфликтов
В ходе синхронизации согласование и закрепление могут происходить между версией синхронизации и версией реплики. В ходе этого согласования могут возникать конфликты. Вы можете выбрать политику согласования, определяющую, как будут обрабатываться конфликты при обнаружении. Для получения информации о версиях синхронизации, версиях реплики и о том, когда происходит согласование, см. раздел Синхронизация и работа с версиями.
Разрешение конфликтов могут выполняться следующим образом:
- Вручную – в рамках этой политики при возникновении конфликта операция согласования будет прервана и реплика будет отмечена как имеющая конфликт. Это дает вам возможность выполнения согласования после этого либо вручную, либо путем запуска определенного пользовательского кода согласования. Как только согласование будет выполнено, и изменения будут закреплены в версии реплики, реплика больше не будет находиться в конфликтном согласовании. Пока реплика находится в конфликтном состоянии, она может принимать, но не может отправлять изменения. Более подробно о Ручном разрешении конфликтов при синхронизации.
- Разрешить в пользу базы геоданных 1 – конфликты разрешаются в пользу базы геоданных 1. В этом случае при возникновении конфликта представление в базе геоданных 1 будет автоматически иметь приоритет над представлением в базе геоданных 2. Поскольку конфликты будут разрешаться автоматически, то при использовании данной политики реплика никогда не будет находиться в конфликтном состоянии после выполнения синхронизации.
- Разрешить в пользу базы геоданных 2 – конфликты разрешаются в пользу базы геоданных 2. В этом случае при возникновении конфликта представление в базе геоданных 2 будет автоматически иметь приоритет над представлением в базе геоданных 1. Поскольку конфликты будут разрешаться автоматически, то при использовании данной политики реплика никогда не будет находиться в конфликтном состоянии после выполнения синхронизации.
Примечание:
Стандартной политикой является использование представления данных в родительской реплике. Конфликты могут быть разрешены в пользу базы геоданных 1 или в пользу базы геоданных 2, что определяется в зависимости от того, в какой базе геоданных содержится родительская реплика.
При работе с двухсторонними репликами, если вы выберете синхронизацию в обоих направлениях, то вы не сможете выбрать политику ручного согласования конфликтов.
Выявление конфликтов
- Конфликт определен по строке – определение конфликтов по объекту.
- Конфликт определен по столбцу – определение конфликтов по атрибуту.
Согласовать с родительской версией
Эта опция доступна только для открепленных /прикрепленных реплик и означает автоматическое согласование при отправке изменения данных в родительскую реплику в случае наличия конфликтов.
- Не согласовывать – не согласовывать. Используется по умолчанию.
- Согласовать – автоматически согласовывать.
Более подробно о том, как согласовать версию.
Примечание:
Фаза импорта в процессе синхронизации происходит в транзакции. Вторая фаза синхронизации включает повторное согласование, которое также происходит в транзакции. Необходимые ресурсы (область отмены изменения или файлы логических журналов) будут варьироваться в зависимости от количества синхронизируемых изменений. Если фаза импорта завершилась, но в фазе согласования произошли ошибки, реплика будет выглядеть так, как будто имеется конфликт , и вы можете позже войти и завершить согласование вручную.
Поиск ошибок
Если в процессе синхронизации возникнут ошибки, то будет произведен откат операции. Любые изменения, которые были внесены, будут удалены и система вернется в прежнее состояние, в котором она была до начала синхронизации.
Исключением для данного правила будет ситуация, в которой вы производите синхронизацию в обоих направлениях. Если ошибка возникнет после того, как процесс внесения изменений в одном направлении будет завершен, то эти изменения будут закреплены; но при этом система останется в целостном состоянии, и это не повлияет на дальнейшую синхронизацию.