在 Standard 或 Advanced 许可等级下可用。
当数据分布在多个地理数据库中时,可以提高数据可用性和性能。 数据分布后,它有助于减轻服务器争用,并允许组织在执行编辑的用户与为了执行只读操作而访问数据的用户之间平衡其地理数据库上的负载。
地理数据库复制是 ArcGIS Pro 中的可用数据分布工作流之一。 您可以选择两种地理处理工具来创建地理数据库复本:
- 创建复本 - 使用企业级地理数据库中指定列表中的要素类、图层、数据集和表创建复本。 请参阅如何在在线环境中创建检出复本、单向复本或双向复本,或如何在离线环境中创建复本。
- 从服务器创建复本 - 使用指定的要素类、图层、要素数据集列表,或者来自远程地理数据库(该地理数据库使用在 ArcGIS Server 站点上运行的地理数据服务)的表创建复本。 有关详细的工作流步骤,请参阅如何从 ArcGIS Server 创建复本。
在实施之前,准备要复制的数据时需要考虑以下几个方面。
地理数据库复制要求
要复制的数据集必须满足以下要求:
- 源(父)地理数据库必须为企业级地理数据库。
- 连接到父地理数据库的数据库用户必须具有数据的写入权限。
- 复本中的所有数据集必须来自同一企业级地理数据库。
- 必须针对传统版本化对企业级地理数据库连接进行配置;该连接不能为分支版本连接。
- 如果针对传统版本化注册数据,则无法通过将编辑内容移至基表选项进行版本化。
其他复制要求取决于复制类型:
- 检出/检入复制
- 您可以选择检出非版本化数据或使用传统版本注册的数据。
- 单向和双向复本
- 每个数据集必须具有一个 GlobalID 列。 此列用于保持行在地理数据库之间的唯一性。
- 单向复制
- “父-子”单向复制 - 子复本可以是企业级地理数据库或文件地理数据库。
- “子-父”单向复制 - 子复本和父复本必须都托管在企业级地理数据库中。
- 使用存档追踪复本变更选项的单向复制 - 父复本版本必须为默认地理数据库版本。 在创建复本之前,必须启用数据存档。
不满足这些要求的所有数据集均不会包含在复本中。 有关更多详细信息,请参阅创建复本地理处理工具。 如果任何数据集均不满足要求,则复本创建将失败。
要复制的数据列表将自动扩展为包括相关数据集。 例如,如果选择拓扑或要素数据集中的任何要素类进行复制,则会包括该拓扑或要素数据集中的所有要素类。 有关创建复本时应用附加规则和行为的数据类型和地理数据库功能的信息,请参阅以下内容:
确定要复制的数据集
创建复本的最重要方面之一是确定应复制哪些数据。 创建复本时,您可以选择复制数据集中的所有数据或仅复制数据的子集。 按需计划复制适量的数据。 请考虑复本的生存时间并确保满足您的相应要求。
要复制的数据的元数据在复本创建过程中进行复制。 但是,在复本同步过程中不会应用对元数据所做的更改。
复制所有数据
创建复本地理处理工具允许您复制在复本的图层中包含的所有数据。
注:
对于非空间表,默认行为是仅复制表的方案。 要复制特定表的所有记录,请按照创建要复制的数据子集中的以下步骤指定 SQL 表达式 1=1 作为表上的定义查询。 要将所有表的所有记录复制到子地理数据库复本,请使用创建复本地理处理工具的高级设置部分下的表的所有记录选项。 要复制记录的子集,请设置适当的 SQL 表达式。
创建要复制的数据的子集
有时,您可能只希望复制数据集中要素的子集。 有多种方法可以指定要复制的数据子集:
- 使用定义查询。
- 使用选择集。
- 指定范围。
- 使用几何要素。
根据所使用的任何过滤器确定数据后,即可应用关系类逻辑(如果关系类存在)。 对于关系类中包含的每个数据集来说,会额外添加一些行,前提是它们与复本中的现有数据相关。 有关详细信息,请参阅复制与相关数据。
使用定义查询
定义查询使用 SQL 语法编写,可用于通过过滤要从数据集中检索并显示在图层属性表中要素的方法,来定义将在图层中使用的要素子集。 要复制要素的子集,请按照以下步骤首先在 ArcGIS Pro 中为图层创建定义查询。
由于定义查询应用于地图中的图层,而非随地理数据库中的数据集一起保存,因此您必须将图层从地图“内容”窗格拖动到创建复本地理处理工具中的复本数据集字段,或者从创建复本地理处理工具的复本数据集下拉菜单中选择图层。
注:
请勿使用浏览按钮添加复本数据集。 使用浏览按钮时,不支持对地图中数据的定义查询。
使用选择集
通过选择要素可在地图上高亮显示要素子集,以便在随后的数据探索或数据分析中使用。 选择要素后,可以复制单个要素类和表的选择集。 从创建复本地理处理工具,使用复本数据集下拉菜单,以确保复本内使用了映射中选定的数据集。
指定范围
范围环境设置可用于定义要复制的数据的空间范围。 此设置将仅处理和包括通过指定范围的要素。
即使设置了输出坐标系环境,仍假设所输入的范围位于存储输入数据的坐标系之中。 如果该工具采用了多个输入数据集,则第一个数据集将定义范围的坐标系。
使用几何要素
可以指定包含一个或多个要素的图层,并且该图层中与几何相交或者聚合几何的任何数据都将包含在复本中。 有关如何使用此参数定义复本几何的详细信息,请参阅下一部分中复本几何要素参数的说明。
数据复制示例
以下维护工作指令示例将说明数据复制的一些默认行为。
维护工作队准备在某居民区进行一些检查。 为了进行某些字段编辑,工作队需要对覆盖此居民区的那部分基础设施进行复制。 要开始复制过程,需要使用空间过滤器来标识检查区域的空间范围(在本例中,范围将通过环境设置进行设置)。
工作队要重点关注已采用特殊材料进行绝缘的电缆。 为了标识这些电缆,需要对相关数据集应用查询。
最后,由于每个维护工作队希望每天只访问一定数量的属性,因而通过基于属性数量的定义查询来标识一个居民区的住户。 选择如下所示。
将复制以下内容:选定的要素、由定义查询标识的要素,以及与所选空间范围相交的要素。 其中还将包括一些额外的要素。