Create Replica From Server (Data Management)

Summary

Creates a replica using a specified list of feature classes, layers, feature datasets, and tables from a remote geodatabase using a geodata service published on ArcGIS Server.

Usage

  • The source must be a geodata service representing a remote enterprise geodatabase. The destination can be either a local or a remote geodatabase.

  • The data that will be replicated must be registered as traditional versioned but not with the option to move edits to base. The connected database user must also have write permissions to the data. For two-way and both types of one-way replicas, all datasets must have a globalid column and a high-precision spatial reference.

  • For check-out and one-way replicas, the child replica geodatabase can be an enterprise or file geodatabase.

  • For two-way and one-way child-to-parent replicas, the child geodatabase must be an enterprise geodatabase.

  • To use archiving for one-way replicas, the parent workspace must be connected to the default version. For one-way child-to-parent replicas, the child workspace must be connected to the default version.

  • The default for feature classes is to replicate all features. The default filter for tables is Schema Only; only the schema for the table will be replicated. If you set the Extent environment or specify replica geometry features, it will be applied as a spatial filter in which only features intersecting the extent will be replicated. Tables will also include rows that are related to rows that are part of the replica.

  • The Replica Geometry Features parameter can be used to define the replica geometry. You can also use the Extent environment setting to define the replica geometry.

    • If only the Replica Geometry Features parameter is set, only data intersecting the replica geometry features will be replicated.
    • If only the Extent environment is set, only data intersecting the extent will be replicated.
    • If both the Replica Geometry Features parameter and the Extent environment are set, the Replica Geometry Features parameter will be used.
    • If neither the Replica Geometry Features parameter nor the Extent environment is specified, the full extent of the data will be used.

  • The replica geometry features can be points, lines, or polygons.

  • A feature layer used for the replica geometry features can contain one or more features. If there is more than one, the geometries are merged, and only data that intersects the merged geometries will be replicated.

  • If filters (such as spatial, selection, or definition query) have been defined on the replica geometry features, only features that satisfy these filters will be used to define the replica geometry. See Preparing data for replication for more information.

  • The Re-use Schema parameter options are only available for checkout replicas.

Parameters

LabelExplanationData Type
Geodata Service

The geodata service representing the geodatabase from which the replica will be created. The geodatabase referenced by the geodata service must be an enterprise geodatabase.

GeoDataServer
Datasets

The list of the feature datasets, stand-alone feature classes, tables, and stand-alone attributed relationship classes from the geodata service to be replicated.

String
Replica Type

Specifies the type of replica that will be created.

  • Two way replica Changes will be sent between child and parent replicas in both directions.
  • One way replicaChanges will be sent from the parent replica to the child replica only.
  • Check out replicaData will be replicated, edited, and checked back in one time.
  • One way child to parent replicaChanges will be sent from the child replica to the parent replica only.
String
Geodatabase to replicate data to

The local geodatabase that will host the child replica. Geodata services are used to represent remote geodatabases. The geodatabase can be an enterprise or file geodatabase. For two-way replicas, the child geodatabase must be an enterprise geodatabase. For one-way and check-out replicas, the geodatabase can be a file or enterprise geodatabase. File geodatabases must exist before running this tool.

Workspace ; GeoDataServer
Replica Name

The name that identifies the replica.

String
Replica Access Type
(Optional)

Specifies the type of replica access.

  • FullComplex types such as topologies, are supported and the data must be versioned. This is the default.
  • SimpleThe data on the child is not versioned and must be simple. This allows the replica to be interoperable. Nonsimple features in the parent (for example, features in topologies) will be converted to simple features (for example, point, line, and polygon feature classes).
String
Initial Data Sender
(Optional)

Specifies which replica will send changes when in disconnected mode. If you are working in a connected mode, this parameter is inconsequential. This ensures that the relative replica will not send updates until the changes are first received from the initial data sender.

  • Child data senderThe child replica will be the initial data sender. This is the default.
  • Parent data senderThe parent replica will be the initial data sender.
String
Expand Feature Classes and Tables
(Optional)

Specifies whether expanded feature classes and tables—such as those in networks, topologies, or relationship classes—will be added.

  • Use defaultsThe expanded feature classes and tables related to the feature classes and tables in the replica will be added. The default for feature classes is to replicate all features intersecting the spatial filter. If no spatial filter has been provided, all features will be included. The default for tables is to replicate the schema only. This is the default.
  • Add with schema onlyOnly the schema for the expanded feature classes and tables will be added.
  • All rowsAll rows for expanded feature classes and tables will be added.
  • Do not addNo expanded feature classes or tables will be added.
String
Re-use Schema
(Optional)

Specifies whether a geodatabase that contains the schema of the data to be replicated will be reused. This reduces the amount of time required to replicate the data. This parameter is only available for checkout replicas.

  • Do not reuseSchema will not be reused. This is the default.
  • ReuseSchema will be used.
String
Replicate Related Data
(Optional)

Specifies whether rows related to rows existing in the replica will be replicated. For example, a feature (f1) is inside the replication filter and a related feature (f2) from another class is outside the filter. Feature f2 will be included in the replica if you choose to get related data.

  • Do not get relatedRelated data will not be replicated.
  • Get relatedRelated data will be replicated. This is the default.
String
Replica Geometry Features
(Optional)

The features that will be used to define the area to replicate.

Feature Layer
Use archiving to track changes for 1 way replication
(Optional)

Specifies whether the archive class will be used to track changes instead of the versioning delta tables. This is only available for one-way replicas.

  • ArchivingArchiving will be used to track changes.
  • Do not use archivingArchiving will not be used to track changes. This is the default.
Boolean
All records for tables
(Optional)

Specifies whether all records or only the schema will be copied to the child geodatabase for tables that do not have filters applied (such as selections or definition queries).

Tables with applied filters will be honored.

  • Checked—For tables with no applied filters, all records will be copied to the child geodatabase for tables. This option will override the Expand Feature Classes and Tables parameter value.
  • Unchecked—For tables with no applied filters, only the schema will be copied to the child geodatabase for tables. Tables with applied filters will be honored. This is the default.

Boolean

Derived Output

LabelExplanationData Type
Out GeoData Service

The updated geodata service.

Workspace;GeoDataServer
Replica Name

The name of the output replica.

String

arcpy.management.CreateReplicaFromServer(in_geodataservice, datasets, in_type, out_geodatabase, out_name, {access_type}, {initial_data_sender}, {expand_feature_classes_and_tables}, {reuse_schema}, {get_related_data}, {geometry_features}, {archiving}, {all_records_for_tables})
NameExplanationData Type
in_geodataservice

The geodata service representing the geodatabase from which the replica will be created. The geodatabase referenced by the geodata service must be an enterprise geodatabase.

GeoDataServer
datasets
[dataset_name,...]

The list of the feature datasets, stand-alone feature classes, tables, and stand-alone attributed relationship classes from the geodata service to be replicated.

String
in_type

Specifies the type of replica that will be created.

  • TWO_WAY_REPLICA Changes will be sent between child and parent replicas in both directions.
  • ONE_WAY_REPLICAChanges will be sent from the parent replica to the child replica only.
  • CHECK_OUTData will be replicated, edited, and checked back in one time.
  • ONE_WAY_CHILD_TO_PARENT_REPLICAChanges will be sent from the child replica to the parent replica only.
String
out_geodatabase

The local geodatabase that will host the child replica. Geodata services are used to represent remote geodatabases. The geodatabase can be an enterprise or file geodatabase. For two-way replicas, the child geodatabase must be an enterprise geodatabase. For one-way and check-out replicas, the geodatabase can be a file or enterprise geodatabase. File geodatabases must exist before running this tool.

Workspace ; GeoDataServer
out_name

The name that identifies the replica.

String
access_type
(Optional)

Specifies the type of replica access.

  • FULLComplex types such as topologies, are supported and the data must be versioned. This is the default.
  • SIMPLEThe data on the child is not versioned and must be simple. This allows the replica to be interoperable. Nonsimple features in the parent (for example, features in topologies) will be converted to simple features (for example, point, line, and polygon feature classes).
String
initial_data_sender
(Optional)

Specifies which replica will send changes when in disconnected mode. If you are working in a connected mode, this parameter is inconsequential. This ensures that the relative replica will not send updates until the changes are first received from the initial data sender.

  • CHILD_DATA_SENDERThe child replica will be the initial data sender. This is the default.
  • PARENT_DATA_SENDERThe parent replica will be the initial data sender.
String
expand_feature_classes_and_tables
(Optional)

Specifies whether expanded feature classes and tables—such as those in networks, topologies, or relationship classes—will be added.

  • USE_DEFAULTSThe expanded feature classes and tables related to the feature classes and tables in the replica will be added. The default for feature classes is to replicate all features intersecting the spatial filter. If no spatial filter has been provided, all features will be included. The default for tables is to replicate the schema only. This is the default.
  • ADD_WITH_SCHEMA_ONLYOnly the schema for the expanded feature classes and tables will be added.
  • ALL_ROWSAll rows for expanded feature classes and tables will be added.
  • DO_NOT_ADDNo expanded feature classes or tables will be added.
String
reuse_schema
(Optional)

Specifies whether a geodatabase that contains the schema of the data to be replicated will be reused. This reduces the amount of time required to replicate the data. This parameter is only available for checkout replicas.

  • DO_NOT_REUSESchema will not be reused. This is the default.
  • REUSESchema will be used.
String
get_related_data
(Optional)

Specifies whether rows related to rows existing in the replica will be replicated. For example, a feature (f1) is inside the replication filter and a related feature (f2) from another class is outside the filter. Feature f2 will be included in the replica if you choose to get related data.

  • DO_NOT_GET_RELATEDRelated data will not be replicated.
  • GET_RELATEDRelated data will be replicated. This is the default.
String
geometry_features
(Optional)

The features that will be used to define the area to replicate.

Feature Layer
archiving
(Optional)

Specifies whether the archive class will be used to track changes instead of the versioning delta tables. This is only available for one-way replicas.

  • ARCHIVINGArchiving will be used to track changes.
  • DO_NOT_USE_ARCHIVINGArchiving will not be used to track changes. This is the default.
Boolean
all_records_for_tables
(Optional)

Specifies whether all records or only the schema will be copied to the child geodatabase for tables that do not have filters applied (such as selections or definition queries).

Tables with applied filters will be honored.

  • ALL_RECORDS_FOR_TABLESFor tables with no applied filters, all records will be copied to the child geodatabase. This option will override the expand_feature_classes_and_tables parameter value.
  • SCHEMA_ONLY_FOR_TABLES For tables with no applied filters, only the schema will be copied to the child geodatabase. Tables with applied filters will be honored. This is the default.
Boolean

Derived Output

NameExplanationData Type
out_geodata

The updated geodata service.

Workspace;GeoDataServer
output_name

The name of the output replica.

String

Code sample

CreateReplicaFromServer example 1 (Python window)

The following Python window script demonstrates how to use the CreateReplicaFromServer function in immediate mode.

import arcpy
arcpy.env.workspace = "C:/Data/MySDEdata.sde"
arcpy.management.CreateReplicaFromServer(
        "C:/MyServerConn/RoadMap.GeoDataServer", "Roads", "TWO_WAY_REPLICA", 
        arcpy.env.workspace, "MajorRoads_replica", "FULL", "CHILD_DATA_SENDER", 
        "USE_DEFAULTS", "DO_NOT_REUSE", "GET_RELATED")
CreateReplicaFromServer example 2 (stand-alone script)

The following stand-alone script demonstrates how to use the CreateReplicaFromServer function.

# Name: CreateReplicaFromServer_Example2.py
# Description: Creates a two-way replica from a geodata service

# Import system modules
import arcpy

# Set workspace
arcpy.env.workspace = "C:/Data/MySDEdata.sde"

# Set local variables
gisServer = "C:/MyServerConn/RoadMap.GeodataServer"
in_datasets = "Roads; Streets"
replica_type = "TWO_WAY_REPLICA"
out_workspace = env.workspace
replica_name = "MajorRoads_replica"
access_type = "FULL"
initial_sender = "CHILD_DATA_SENDER"
expand = "USE_DEFAULTS"
reUse = "DO_NOT_REUSE"
related = "GET_RELATED"
replica_geometry = "LA_County"
archiving = "DO_NOT_USE_ARCHIVING"

# Run CreateReplicaFromServer
arcpy.management.CreateReplicaFromServer(
        gisServer, in_datasets, replica_type, out_workspace, replica_name, 
        access_type, initial_sender, expand, reUse, related, replica_geometry, 
        archiving)

Related topics