English

How To: Set up one-way replicas to send changes from many source geodatabases to a single target geodatabase

Summary

Instructions provided describe how to set up a one-way replication scenario, where edits are being synchronized in one direction from many source geodatabases into one target geodatabase.

Procedure

One of the more common use cases for one-way replication involves a central geodatabase replicating a subset of data to multiple geodatabases. Referring to the graphic below, imagine a land cover dataset that contains information for the entire United States is stored and maintained in a national geodatabase. Each state is interested in receiving updates only for those features within their state's boundaries. To achieve this, one-way replicas are created from the national geodatabase to each state geodatabase. In this configuration the national geodatabase is assigned the role of Parent, and the state geodatabases are assigned the role of Child in each replica pair.

[O-Image] OneWay Repica Example configuration

However, there is also a valid use case for flipping this relationship around where each state is responsible for maintaining its own portion of a dataset. Again, referring to the graphic below, instead of updates being sent from the national geodatabase to each state, each state manages its own land cover information and periodically sends updates to the Parent. The edits from each state are synchronized into one comprehensive land cover dataset in the national geodatabase. In this configuration, the national geodatabase is assigned the role of Child, and the state geodatabases are assigned the role of Parent in each replica pair.

[O-Image] Reverse One Way Scenario
This is a valid workflow, but it requires a few extra steps to be set up correctly. The steps below are described within the context of the national/state example, but can be used to apply to any particular scenario.

Steps for ArcGIS 9.2:

1) Gather all the data to be included in the replicas into the national geodatabase. The data may already exist on the national geodatabase, or it may require loading data from each of the different state geodatabases into the national geodatabase.

2) Add GlobalIDs to the data on the national geodatabase. If there is already a GlobalID field, skip this step. See geodatabase field data types help for more information on GlobalIDs.

3) Version the data in the national geodatabase.

4) If the data exists on the state geodatabases, delete it. This is an important step because the GlobalID values for each feature need to be consistent between the national and state geodatabases.

Note:
To minimize downtime for data access at the state level, instead of deleting the data right away, simply use a second state geodatabase to perform the remaining steps. Allow Read Only access to the original data at this time, but do not allow editors to hit the geodatabase as any edits performed on it will be lost. When the replica creation procedures have been completed, swap it out for the new replica geodatabase.

5) The next step is to extract the appropriate data to each state geodatabase. Use the Data Extraction wizard to extract the data to include in the replica to each state geodatabase.

Note:
Data extraction preserves GlobalID values. Replication uses GlobalIDs to identify the same feature/record across databases, so the values must be consistent across the geodatabases.

6) For each state, create a one-way replica, where the state geodatabase is the source (parent) and the national geodatabase is the target (child), using the Register Existing Data Only option.
[O-Image] OneWay - Register Only option

Steps for ArcGIS 9.3 or above:

For ArcGIS 9.3 or above, use the steps outlined in this section for preparing the geodatabases for replication. These steps use new workflows supported at ArcGIS 9.3 that preserve GlobalID values when copying and loading data. These steps simplify the procedures required to prepare the geodatabases while ensuring that the GlobalID values are consistent between the geodatabases. Replication uses GlobalIDs to identify the same feature/record across databases, so the values must be consistent across the geodatabases.

1) If all the data to be replicated already exists in the national geodatabase, follow the steps outlined in the Steps for ArcGIS 9.2 section above, independent of the ArcGIS release.

2) Add GlobalIDs to the data on the each state geodatabase. If there is already a GlobalID field, skip this step. See geodatabase field data types help for more information on GlobalIDs.

3) Gather all the data from the each of the different state geodatabases into the national geodatabase, making sure to preserve the GlobalID values. At ArcGIS 9.3, new workflows are supported for copying and loading data while preserving GlobalID values. Follow the procedures outlined in this help topic : How to copy or load data and preserve GlobalID values.

4) The data now exists in both the national and state geodatabases and the GlobalID values are consistent between the geodatabases. For each state, create a one-way replica, where the state geodatabase is the source (parent) and the national geodatabase is the target (child), using the Register Existing Data Only option.
[O-Image] OneWay - Register Only option

Related Information