在 Standard 或 Advanced 许可等级下可用。
在具有多个编辑器的企业级地理数据库中,版本允许您在相同时间内使用相同数据,而无需应用锁定或复制数据。 版本为每个编辑器提供了唯一且孤立的数据视图。 版本化允许编辑者在其自己的地理数据库版本中以及在多个编辑会话中孤立工作,从而简化了长期事务。 当编辑者完成编辑集合时,他们可以将更改合并回创建其版本的父版本。 地理数据库中所有版本的原始父版本称为默认版本。
版本不仅仅备份地理数据库。 相反,版本及其内部进行的事务可通过系统表进行追踪。 这样可隔离编辑者在多个编辑会话中的工作,使得用户进行编辑时不必锁定生产版本中的要素或直接影响到其他用户,且无需备份数据。
各组织之间的工作流存在差别。 它们通常按照独立的阶段向前推进,并且每个阶段都需要分配一组不同的资源与业务规则。 一般来说,整个流程中的每个阶段都表示一个独立的工作单元,如工作指令。 要管理各个工作指令,可以创建单独的孤立版本并对其进行修改。 当您对完成的工作感到满意后,可以将更改集成到已发布的数据库版本中。 以这种方式使用版本可以使您灵活地适应各种工作流和数据管理策略。
以下部分提供了关于版本概念和工作流的一般性概述。
版本化类型
有两种可用的版本化类型,每种版本化均适用于特定的工作流和部署选项:
- 分支版本化 - 在使用 Web 要素图层时,允许多用户编辑方案和长期事务,从而简化了 Web GIS 模型。 有关详细信息,请参阅分支版本场景。
- 传统版本化 - 在直接从企业级地理数据库进行访问时,提供在多个版本中处理长期事务的灵活性,在使用要素服务以适应短期事务时,提供简化的编辑体验。 有关详细信息,请参阅传统版本场景。
- 选择将编辑内容移动到基表的传统版本化 - 一个传统版本化的可选表单,允许编辑者和应用程序直接访问基表数据,同时也允许其他编辑者在各自的孤立版本中工作。
有关每个版本化类型的优势和局限性以及它们适用的工作流的详细信息,请参阅版本化类型。
将数据注册为版本
无论哪种类型的版本化,您都必须将数据注册为版本化,以使其参与地理数据库的非默认版本。 将数据注册为版本化允许编辑者通过创建自己的版本并在其中工作来进行孤立工作。 将数据注册为版本化后,会针对对数据执行的插入、更新和删除操作追踪编辑。
在您已将数据集注册为版本后,您可以从默认版本创建一个版本,从而开始在您自己的版本中工作。
有关将数据集注册为版本化的详细信息,请参阅将数据集注册为分支版本化或将数据集注册为传统版本化。
默认版本
当访问企业级地理数据库时,始终会使用一个版本。 访问版本化数据集时连接的版本在地理数据库连接属性选项卡中为数据库连接指定。 创建数据库连接时,您会自动连接到默认版本。
每个地理数据库包含默认版本;这是地理数据库的祖先或根版本。 在创建其他版本之后,您可以更改所访问的版本。 基于版本类型和数据源,可以直接对数据库连接进行更改(传统版本化),也可以在将数据库连接中的数据集添加到地图上后进行更改(传统版本化),或者在将启用版本管理的 Web 要素图层添加到地图上后进行更改(分支版本化)。
与其他版本不同,默认版本始终存在,且不能被删除。 在大多数工作流策略中,它是数据库的发布版本,表示要建模的系统的当前状态。 可随时将其他版本中的变更发布到默认版本,从而维护和更新默认版本。 此外,您还可以像编辑其他版本一样,对默认版本数据进行编辑,具体取决于所设置的访问权限。 可能需要修改访问权限,以防对默认版本进行意外编辑。
管理版本
一个地理数据库可以有多个版本。 利用版本视图,您可以在企业级地理数据库中创建版本、修改版本属性和删除版本。
创建版本时,它们被视为现有版本的子版本或分支版本。 在传统版本化中,您创建的版本被称为子版本。 在分支版本化中,这些被称为指定版本。
创建版本后,该版本与父版本(祖先版本)相同。 随着时间的推移,版本会随着对祖先版本、子版本或指定版本所做的更改而发生变化。 随着越来越多的版本被创建,树形架构开始形成。 这被称为版本树。
出于简化和地理数据库管理考虑,建议的最佳做法是保持扁平版本树,将默认版本作为所有其他版本的祖先版本。
注:
使用分支版本化,所有指定版本在创建时均以默认版本作为祖先版本;只允许存在一个版本级别。
连接到特定版本
当您第一次连接到企业级地理数据库时,您会自动连接到默认版本。 对于传统版本,可以更改数据库连接所访问的版本。 当您从此连接向地图添加数据时,它将访问您为连接指定的版本。 但是,您也可以更改地图中图层所访问的版本。 有关说明,请参阅连接到传统版本。
连接到分支版本化数据的地理数据库连接将始终访问默认版本。 要访问其他版本,请将包含分支版本化数据的 Web 要素图层添加到地图中,并更改图层所访问的版本。 有关说明,请参阅连接到分支版本。
协调并提交更改
协调并提交可将数据编辑整合到当前使用的版本的任一祖先版本,例如父版本或默认版本。 进行协调时,会将正在编辑的子版本或指定版本中的更改与用来合并更改的版本进行对比。
两个编辑器在同一版本或不同版本中对同一数据进行操作会导致冲突。 某行在进行对比的两个版本中不相同时会产生冲突。 协调过程可显示各个冲突,您还可以利用该过程选择要保留的行的表示。
完成协调后,可提交更改。 这会将所做的更改应用到祖先版本中。 对于分支版本化,这始终为默认版本。 如果不再需要所提交的子版本或指定版本,则可将其删除。 此外,您还可以继续编辑数据,然后进行协调并再次提交更改。
有关详细信息,请参阅协调和提交对分支版本的编辑和协调和提交对传统版本的编辑。
提示:
或者,您可以使用协调版本工具协调或发布多个版本。