Репликация и версии

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

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

Одно- и двусторонние реплики

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

Для обеих дочерних версий в многопользовательской базе геоданных, версия по умолчанию (default) - это версия реплики. Кроме того факта, что они используются для репликации, версии реплики больше ничем не отличаются от других версий. Поскольку файловые базы геоданных не поддерживают управление версиями, в этом случае в дочерней базе геоданных в односторонней реплике не создается версии реплики.

Примечание:

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

Реплики, созданные из дочерней многопользовательской базы геоданных

Открепленные реплики

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

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

При работе с открепленной репликацией новая версия создается с именем этой реплики. Комбинация имени пользователя и имени реплики должна быть уникальной. Например, два разных пользователя – user1 и user2 – могут создать по реплике с одинаковыми названиями MyReplica, так как полные имена у этих реплик будут user1.MyReplica и user2.MyReplica. Но пользователь user1 не может создать несколько реплик с таким названием, так как имя реплики должно быть уникальным.

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

Открепленные реплики, созданные из дочерней многопользовательской базы геоданных

Более подробно:

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

Использование архивирования для отслеживания изменений реплики

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

Когда для отслеживания изменений используется работа с версиями, создаются системные версии. Из-за этих версий системы вам необходимо регулярно выполнять синхронизацию для достижения эффективного сжатия базы. Если для отслеживания изменений применяется архивирование, системные версии не создаются. Поэтому процессы согласования, постобработки и сжатия не затрагиваются, делая управление версией и управление репликой независимыми. Это позволяет быть более гибким графику синхронизации.

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

Односторонняя репликация от родительской к дочерней с использованием архивации из версии default многопользовательской базы геоданных

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

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

Связанные разделы