版本创建示例
本主题仅适用于 ArcGIS for Desktop Standard 和 ArcGIS for Desktop Advanced。
以下是一家小型私人调查公司使用版本管理对其地理数据库中的数据进行管理的情景。员工使用这些数据辅助其展开调查分析。下面将解释该公司如何创建版本并对版本设置权限。
实例背景
调查公司的地理数据库管理员在创建地理数据库时创建了地理数据库的 DEFAULT 版本。由于这是一家小公司,因此地理数据库管理员也是数据库管理员。他在数据库中添加了五个用户,公司中每个要访问地理数据库的员工对应一个用户名。所有员工都可能会对某些数据进行编辑,而有些用户则可能需要创建新的数据集,因此,地理数据库管理员为这些用户授予了在数据库中编辑和/或创建数据所需的权限。
员工 Maxine 负责将基础数据加载到地理数据库中并对这些数据进行维护。Maxine 先加载数据(如正射影像、地址、道路和建筑物)到地理数据库中。由于数据是 Maxine 加载的,因此她将自动具有编辑该数据的权限。
首席调查员 Angus 将创建与调查相关的数据集,如犯罪现场和目击者信息。两个初级调查员 Frank 和 Gertrude 将负责完成与调查相关数据集的大部分编辑工作,因此 Angus 要将这些数据集的编辑权限授予 Frank 和 Gertrude。(有关设置数据集权限的信息,请参阅授予和撤消数据集的权限。)
公司已确定使用版本管理来编辑其数据。要执行版本化编辑,必须将数据集注册为版本。只有拥有数据集的用户(创建数据集的用户)才可将数据集注册为版本,因此 Maxine 将地址、道路和建筑物数据集注册为版本,而 Angus 将诸如犯罪位置和目击者信息之类的数据集注册为版本。
此时,只有一个版本 - DEFAULT 版本。此版本将被视为数据的主版本或生产版本。将创建其他版本,以使员工能够在不对其他用户锁定数据或不会让其他用户看到不完整数据的情况下对数据进行编辑。
请记住,版本类似于地理数据库的不同视图,而不是地理数据库的副本。无论创建了多少版本,地理数据库中的每个数据集只有一个副本。
创建一个新版本
由于 DEFAULT 版本是生产版本,因此地理数据库管理员需要防止在现有数据集中对 DEFAULT 版本进行错误编辑。要实现此目的,地理数据库管理员通过地理数据库管理 对话框(可通过目录树中的地理数据库连接访问)的“版本”选项卡将 DEFAULT 版本的权限设置为“受保护的”。
地理数据库管理员对 DEFAULT 版本的权限进行更改后,用户 Maxine 登录并从 DEFAULT 版本创建新版本。这也是从以下位置完成的:
Maxine 将新版本命名为 Base 并将版本的访问权限设置为公共。
现在,存在两个版本:DEFAULT 和 Base。
所有员工均可连接到这两个版本。只有地理数据库管理员可以在与 DEFAULT 版本连接时对数据进行编辑并提交到 DEFAULT 版本。如果员工通过 Base 版本进行连接,则只要他们被授予了所需的数据集权限,便可对相应的数据集进行编辑。
使用新版本
如上所述,Maxine 将对基础数据进行编辑。她将连接到 Base 版本来对基础数据(如道路、地址及建筑物)进行编辑。
Maxine 完成一组编辑后,地理数据库管理员将检查 Maxine 在 Base 版本中的编辑内容。如果更改正常,则更改内容将与 DEFAULT 版本进行协调,以引入 DEFAULT 版本中可能进行的任何更改。由于只有 Maxine 在编辑此数据,因而在协调期间应该不会出现任何冲突。此时,地理数据库管理员会将这些更改内容提交到 DEFAULT 版本。
此操作会将 Maxine 的所有编辑内容移动到 DEFAULT 版本中。
有关协调、解决冲突和提交的详细信息,请参阅以下主题:
创建其他版本
另一名员工 Angus 需要与公司调查的案例相关的数据。他在 ArcMap 的目录树中连接到地理数据库的 DEFAULT 版本。
然后,Angus 通过地理数据库管理 对话框的“版本”选项卡来基于 DEFAULT 创建一个新版本。
此版本名为 Cases,其权限被设置为“公共”。此版本将用作为每个单独案例所创建的版本的父版本。在地理数据库管理员将此版本与 DEFAULT 版本进行协调并将其提交到 DEFAULT 版本之前,Angus 还将使用此版本对所有案例数据执行质量保证检查。
现在,存在三个版本:DEFAULT、Base 和 Cases。
所有员工均可连接到这三个版本。只有地理数据库管理员可以在与 DEFAULT 版本连接时对数据进行编辑并提交到 DEFAULT 版本。如果员工通过 Base 或 Cases 版本进行连接,则只要他们被授予了所需的数据集权限,便可对相应的数据集进行编辑。
基于非 DEFAULT 版本创建版本
如果为某个调查员分配了一个案例,他/她将基于 Cases 版本创建一个新版本以添加与案例相关的新数据。
这些版本被设置为“受保护的”,因此,在连接到此类版本时,只有当时正在处理案例的调查员才可对数据集进行编辑。
正如以下“版本”选项卡的树视图所示,Gertrude 创建了版本 Case1,而 Frank 创建了 Case2。当 Gertrude 编辑与案例相关的数据集时,她将连接到 Case1,从而添加与该案例相关的数据。同样,Frank 将连接到 Case2 并编辑与案例相关的数据集,从而添加与其负责的案例相关的数据。所有其他员工均可连接到版本 Case1 和 Case2,但他们无法对这些版本中的数据集进行任何编辑,因为这些版本已设置为“受保护的”。
Gertrude 完成对 Case1 的编辑后,她将对更改进行协调并将其提交到 Cases。由于 Frank 可能也在编辑相同的数据集,而且也在对更改进行协调并将其提交到 Cases,因此,此时可能存在冲突。查看这些冲突并将其解决后,Gertrude 即可提交到 Cases。
有关协调、查看和提交的详细信息,请参阅以下主题:
Angus 会查看 Cases 版本中的更改。如果这些更改可接受,地理数据库管理员便会将 Cases 中的更改提交到 DEFAULT 版本。
由于对 Case1 的操作已完成,并且数据已经过查看并提交到 DEFAULT,因此,Gertrude 现在便可将 Case1 删除。
您必须以所有者的身份进行连接才可删除版本。例如,Gertrude 无法删除 Case2 版本。
留下的版本如下所示:
Frank 完成对 Case2 的编辑后,将按照相同的步骤(协调、解决冲突、提交到 Cases)操作,Angus 将在 Cases 版本中检查他的操作,地理数据库管理员将获得批准的更改提交到 DEFAULT,随后,Frank 便可删除 Case2。
接下来的步骤
删除单独的案例版本后,地理数据库管理员应该压缩地理数据库,然后更新数据库统计数据。有关压缩版本化地理数据库的信息,请参阅压缩企业级地理数据库;有关使数据库所用的统计数据保持最新的信息,请参阅使用“分析数据集”工具更新地理数据库中的统计数据。