网络数据集的脏区和版本管理

许多编辑器可以同时编辑存储在 ArcSDE 地理数据库中的网络数据集的源要素。本主题以及其中的各种示意图主要说明在协调版本时网络数据集的脏区所发生的变化。

开始在 ArcSDE 地理数据库中处理网络数据集之前,需要要牢记以下一些要点:

为完整起见,本主题中的概念图显示了从创建父版本和子版本,到协调和提交任何编辑和构建内容的全过程。然而,不必总是从父版本创建时开始,因此可将创建子版本的任何步骤的时点都视为现有子版本及其父版本共享相同状态的时刻。

虽然图形中显示了将构建完毕的网络数据集提交到父版本的方法,但是提交带有脏区的网络数据集也完全有效。不过,在这种情况下要注意,用户可能需要让具有父版本编辑权限的人来最终构建网络数据集。

以下图例将有助于您理解各图:

以下各图的图例

在无源要素编辑内容的情况下协调并提交

本节介绍了脏区在涉及到编辑、构建、协调和提交网络数据集时,在不同版本情景中的表现方式。这些情景不包括对流程中的源要素进行编辑的情况(下一节会涉及编辑)。本节旨在让您基本了解哪个工作流程会产生构建的、无任何脏区的网络数据集。

情景 1:将脏区引入父版本并于父版本构建网络数据集

假定子版本从父版本中继承脏区。之后,在父版本中构建网络数据集。最后,子版本执行协调操作。脏区将从子版本中移除(假定没有进行其他编辑)。

版本化工作流,其中显示了网络数据集的父版本和子版本都有脏区,然后构建父版本的情景。

情景 2:将脏区引入父版本并于子版本中对其进行构建

本情景与上一个情景相似,相似点在于子版本从父版本继承脏区。然而之后,将在子版本而非父版本之中构建网络数据集。在构建操作之后进行协调,将从父版本重新引入脏区。要向父版本提交已构建的网络,需要在提交之前重新构建子版本。

版本化工作流,其中显示了网络数据集的父版本和子版本都有脏区,然后构建子版本的情景。

情景 3:将脏区引入父版本并于父与子两个版本中对其进行构建

本情景将上述两个情景结合在了一起。子版本仍从父版本继承脏区。子版本和父版本在协调之前分别进行构建。经过协调之后,子版本会保留为整洁状态。

版本化工作流,其中显示了网络数据集的父版本和子版本都有脏区,然后构建两个版本的情景。

在具有源要素编辑内容的情况下协调并提交

先前的情景主要考虑在无源要素编辑内容的情况下构建网络数据集。在下面的情景中,会对源要素进行编辑,并将移除由此产生的脏区。

情景 4:在父版本和子版本中编辑不同的源要素

在此情景中,子版本创建之前,网络就已构建完毕。在子版本创建之后,用户对街道源要素类进行了编辑,将街道添加到了地图南侧。同时,用户对父版本进行了编辑,将街道添加到了地图北侧。这时,两个版本分别在地图的南北两端产生了脏区。协调过程会将编辑内容和相关的脏区传送至子版本。然后,网络构建起来,以便可以在无任何脏区的情况下提交到父版本。

版本化工作流,其中显示了网络数据集的源要素在父与子两个版本中进行编辑,而且对脏区进行协调的情景。

开始行动开始行动:

上图中的网络数据集不是在协调之前就在父版本或子版本中立即构建的。然而,若是协调前在两个版本中立即构建了网络数据集,协调时就会重新引入地图南侧的脏区,如下图所示。出现这种情况的原因是协调过程使得父版本的状态在子版本中可见,这样就可能产生一个合并过程。由于子版本的编辑内容对于父版本来说是全新的,因此需要重新构建这些编辑内容与协调的父版本数据之间的连通性。

版本化工作流,在其中显示了网络数据集的源要素在父与子两个版本中进行先编辑后构建的情景。

情景 5:在父版本与子版本中新的源要素相交

本情景显示了在对子版本和父版本的源要素进行编辑之后,网络数据集必须重新构建的另一个原因。在此,父版本和子版本中的编辑内容相交。即使网络在各自版本中是清洁的,协调过程也会引入脏区,因为还需确定相交的要素之间的连通性。

版本化工作流,其中显示了父版本中的源要素与子版本中的源要素相交的情景。

9/15/2013