概要
ArcGIS Server 上で公開されているジオデータ サービスを使用して、リモート ジオデータベースから、指定されたフィーチャクラス、レイヤー、フィーチャ データセット、およびテーブルのリストを使用してレプリカを作成します。
使用法
ソースはリモート エンタープライズ ジオデータベースを公開しているジオデータ サービスでなければなりません。 ターゲットはローカルまたはリモート ジオデータベースのいずれでもかまいません。
複製するデータはバージョン対応登録する必要がありますが、ベース テーブル移行オプションを使用することはできません。
チェックアウト レプリカと一方向レプリカの場合、子レプリカ ジオデータベースはエンタープライズ、ファイル、またはパーソナル ジオデータベースのいずれかとなります。
双方向および子から親への一方向レプリカの場合、子ジオデータベースはエンタープライズ ジオデータベースでなければなりません。
一方向レプリカで履歴管理を使用するには、親ワークスペースがデフォルト バージョンに接続されていなければなりません。子から親への一方向レプリカの場合、子ワークスペースがデフォルト バージョンに接続されていなければなりません。
フィーチャクラスの場合は、デフォルトですべてのフィーチャがレプリカに含まれます。 テーブルの場合、デフォルトのフィルターは [スキーマのみ] であり、そのテーブルのスキーマだけがレプリカに含まれます。 範囲を設定した場合やレプリカ ジオメトリ フィーチャを指定した場合は、範囲が空間フィルターとして適用され、その範囲と交差するフィーチャのみがレプリカに含まれます。 また、レプリカに含まれるテーブルの行に関連付けられる行も含まれます。
[レプリカ ジオメトリ フィーチャ] パラメーターを使用して、レプリカ ジオメトリを指定できます。[範囲] 環境設定を使用してレプリカ ジオメトリを指定することもできます。
レプリカ ジオメトリ フィーチャとして、ポイント、ライン、またはポリゴンを指定できます。
レプリカ ジオメトリ フィーチャに使用されるフィーチャ レイヤーには、1 つ以上のフィーチャを含めることができます。複数のフィーチャがある場合は、ジオメトリがマージされ、マージされたジオメトリと交差するデータだけが複製されます。
フィルター (空間、選択、フィルター設定など) がレプリカ ジオメトリ フィーチャに指定されている場合は、それらのフィルター条件を満たすフィーチャだけがレプリカ ジオメトリの定義に使用されます。詳細については、「レプリケーションのためのデータの準備」をご参照ください。
[スキーマの再使用] パラメーター オプションは、チェックアウト レプリカの場合にのみ使用できます。
構文
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})
パラメーター | 説明 | データ タイプ |
in_geodataservice | レプリカの作成元となるジオデータベースを表すジオデータ サービス。 ジオデータ サービスによって参照されるジオデータベースはエンタープライズ ジオデータベースでなければなりません。 | GeoDataServer |
datasets [dataset_name,...] | ジオデータ サービスから複製するフィーチャ データセット、スタンドアロン フィーチャクラス、テーブル、およびスタンドアロン属性リレーションシップ クラスのリスト。 | String |
in_type | 作成するレプリカのタイプを指定します。
| String |
out_geodatabase | 子レプリカをホストするローカル ジオデータベース。 ジオデータ サービスはリモート ジオデータベースを表すために使用されます。 ジオデータベースは、エンタープライズかファイル ジオデータベースのどちらかになります。 双方向レプリカの場合、子ジオデータベースはエンタープライズ ジオデータベースでなければなりません。 一方向レプリカおよびチェックアウト レプリカの場合は、ファイル ジオデータベースかエンタープライズ ジオデータベースのどちらでもかまいません。 ファイル ジオデータベースは、このツールの実行前に存在している必要があります。 | Workspace ; GeoDataServer |
out_name | レプリカを識別する名前。 | String |
access_type (オプション) | 作成するレプリカ アクセスのタイプを指定します。
| String |
initial_data_sender (オプション) | 非接続モード時にどちらのレプリカがデータ変更を送信できるかを指定します。 接続モードで動作中は、このパラメーターに意味はありません。 このオプションを指定すると、最初のデータ送信を行うレプリカから変更データが最初に受信されるまで、相対レプリカは更新内容を送信することはありません。
| String |
expand_feature_classes_and_tables (オプション) | ジオメトリック ネットワーク、トポロジ、またはリレーションシップ クラスに存在するフィーチャクラスやテーブルなど、関連するフィーチャクラスおよびテーブルを追加するかどうかを指定します。
| String |
reuse_schema (オプション) | 複製するデータのスキーマを含むジオデータベースを再使用するかどうかを指定します。 これにより、データの複製にかかる時間が短縮されます。 このオプションは、チェックアウト レプリカでのみ使用できます。
| String |
get_related_data (オプション) | レプリカに含まれている行に関連付けられている行を複製するかどうかを指定します。 たとえば、レプリケーション フィルター内部にフィーチャ (f1) があり、そのフィルター外部にこのフィーチャに関連付けられた別のクラスの関連フィーチャ (f2) があるとします。 この場合、関連データの取得を選択すると、フィーチャ f2 がレプリカに含まれます。
| String |
geometry_features (オプション) | 複製するエリアを指定するために使用されるフィーチャ。 | Feature Layer |
archiving (オプション) | 変更の追跡に、バージョニングの差分テーブルを使用する代わりにアーカイブ クラスを使用するかどうかを指定します。 このオプションは、一方向レプリカでのみ使用できます。
| Boolean |
派生した出力
名前 | 説明 | データ タイプ |
out_geodata | 更新されたジオデータ サービス。 | Workspace;GeoDataServer |
output_name | 出力レプリカ名。 | String |
コードのサンプル
CreateReplicaFromServer (サーバーからレプリカを作成) の例 1 (Python ウィンドウ)
次の Python ウィンドウ スクリプトは、イミディエイト モードで CreateReplicaFromServer 関数を使用する方法を示しています。
import arcpy
arcpy.env.workspace = "C:/Data/MySDEdata.sde"
arcpy.CreateReplicaFromServer_management(
"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 (サーバーからレプリカを作成) の例 2 (スタンドアロン スクリプト)
次のスタンドアロン スクリプトで、CreateReplicaFromServer 関数を使用する方法を示します。
# 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"
# Execute CreateReplicaFromServer
arcpy.CreateReplicaFromServer_management(
gisServer, in_datasets, replica_type, out_workspace, replica_name,
access_type, initial_sender, expand, reUse, related, replica_geometry,
archiving)
環境
ライセンス情報
- Basic: いいえ
- Standard: はい
- Advanced: はい