ArcGIS版本高级应用 数据归档(历史归档 存档数据)

QQ交流群:607330463 GIS开发技术最强交流群   未经允许 禁止转载  可以参考

目录

1地理数据库 (Geodatabase) 存档

2启用存档 

3存档过程

4使用历史版本

5使用历史标记

6使用地理数据库历史查看器

7直接使用存档类

8架构更改和存档 

9禁用存档 

10存档情景


代码参考1链接

代码参考2链接

数据归档应用场景
        很多用户在处理数据时都会要求记录操作的过程,也就是记录历史数据。地理数据库归档允许数据随时间变化时对数据进行存储和分析。归档类和地理数据库历史查看器可用做解决此问题的工具,所以数据归档功能也常被称为历史归档。Esri公司从ArcGIS 9.2版本之后就增加了Geodatabase 数据模型的历史库功能。
        在国土行业中,用户经常会要求按年、季度、月等时间类型来保留历史,以方便日后进行数据参考或数据分析。随着时间的推移而不断对宗地进行编辑时,可将其保存在归档类中。如果想要查看宗地在某时刻的情况,便可使用地理数据库历史查看器切换到相应的日期和时间。相反,如果想要查看某宗地随时间的变化情况,则可将宗地归档类添加到地图中,并依照其ID号选择相应的宗地。这会显示所选宗地随时间变化的每个制图表达。

1地理数据库 (Geodatabase) 存档

ArcGIS 中的存档操作能够记录和访问对地理数据库中所有数据或数据子集所做的更改。地理数据库存档是一种记录、管理和分析数据更改的机制。

很多组织都需要保留对数据的更改以回答一些常见的问题,例如

  • 某一时刻特定属性的值是多少?
  • 特定要素或特定行是如何随时间变化的?
  • 某一空间区域是如何随时间变化的?

地理数据库存档用于帮助各组织机构通过保存数据更改来回答这些类型的问题。地理数据库存档可保存从启用存档到禁用存档这段期间内所发生的全部更改,明确这一点是十分重要的。

地理数据库归档允许用户连接到历史版本。历史版本表示某一特定历史时刻的数据,它可提供地理数据库的只读信息。用户可通过现有历史标记或特定时刻连接到历史版本。历史标记是用户创建的一个特定时刻,例如,“分区 158 完成”是指 2012 年 7 月 11 日 2:13 PM。

ArcGIS 中提供的工具使用户可以轻松地研究对数据所做的更改。“历史查看器”工具使用户可快速导航到特定历史时刻以显示数据在该时刻是如何显示的。此外,向 ArcMap 中直接添加归档类可使用户执行查询以探究数据如何随时间变化;例如,查看在 2006 年 1 月 1 日到 2007 年 1 月 1 日之间对特定道路所做的编辑。

2启用存档 

或者

通过右键单击目录树中的数据集,并单击启用存档,可以对版本化或非版本化数据启用存档。

要一次对多个数据集启用存档,可以使用启用存档地理处理工具。

地理数据库以不同方式管理数据集存档,具体取决于数据集是否已版本化。

启用非版本化数据存档

启用非版本化数据的存档时,地理数据库会在基表中为该数据集创建附加日期属性。这些日期属性是基表中名为 gdb_from_date 和 gdb_to_date 的列,用于记录存档行有效使用期限的时间戳。对数据集进行编辑时,将更新这些属性,随时间推移来维护历史记录。

启用版本化数据存档

启用版本化数据存档类似于将数据集注册为版本。对于每个启用了存档的数据集,都会创建一个新存档类。启用存档时,数据集或对象类的 DEFAULT 版本中的所有属性和所有行都会被复制到存档类中。完成存档类创建所需的时间取决于启用存档的数据集的大小。存档类与原始数据集具有相同的方案,但还包括三个额外的属性,即用于记录存档行的有效使用期限时间戳的附加日期属性 gdb_from_date 和 gdb_to_date,以及用于唯一标识每一行的 gdb_archive_oid 属性。

将存档类表示为独立要素类,而不是管理版本化表的增量表中的历史行,这意味着存档的存在以及大小不会影响数据库的效率。可以将数据集取消注册为版本,而不会影响或删除存档类。如果将数据集取消注册为版本,则存档类会变为对象类或要素类。

启用数据集存档后,保存或提交到 DEFAULT 版本的所有更改还会另外在存档类中进行保存。您无法将历史数据追加到存档类中。手动更改存档类会破坏地理数据库存档过程。

启用存档的提示:

  • 如果注册版本化数据集时将编辑内容移动到基表,则无法启用存档。必须将其取消注册,然后在不选择将编辑内容移动到基表选项的情况下将其注册为版本。
  • 不能对已启用存档的数据集启用版本化。必须先禁用存档,将数据集注册为版本,然后重新启用存档。
  • 只有数据集或类的所有者才能对其启用存档。
  • 启用存档不会遍历关系类。如果关系类位于要素数据集容器之外,则必须显式启用对此类的存档。
  • 在启用存档阶段,还会在存档类中创建原始类上的索引。
  • 通过打开要素类或表的属性对话框,可查看启用存档的时间和日期。右键单击对象并选择“属性”。“版本化”下方的“常规”选项卡上显示了对象启用存档的时间。
  • 存档类的默认命名约定是在对象类的名称后加下划线和 H。例如,对于名为 Roads 的对象类,相关存档类的名称则为 Roads_H。
  • 存档类会被地理数据库过滤,在 ArcCatalog 中不可见,因此在目录树中也不可见。可使用“地理数据库历史”工具条上的“添加历史存档”命令将存档类添加到 ArcMap 以供查看和分析。
  • 要在使用存档类时获得最佳性能,应根据存档类所发生的更改量定期更新数据库统计信息。
  • 可以指定存档表的名称以及起始日期和终止日期属性。如果开发者想为归档表提供自己的命名约定,可以参考“软件开发者工具包”中的 IArchiveregistrationinfo 接口。
  • 启用存档时,会搜索带有后缀 _ARCHIVE 的原始源的关键字。如果此关键字不存在,则使用数据源的关键字和参数值。
  • 对非版本化数据集启用存档时,ArcGIS 会创建一个名为 <数据集名称>_evw 的数据集视图。例如,如果对名为 streets 的非版本化要素类启用存档,则 ArcGIS 会为该要素类创建名为 streets_evw 的视图。如果已存在名为 streets_evw 的视图,则 ArcGIS 会删除该视图。因此,在对 streets 数据集启用存档之前应重命名现有视图。

3存档过程

在版本化数据集上启用存档将创建存档类,并用 DEFAULT 版本中存在的当前数据填充存档类。存档类使用 gdb_from_date 和 gdb_to_date 来保存存档更改的时间。启用非版本化数据存档以在类的基表内直接创建 gdb_from_date 和 gdb_to_date 字段。

表示时间

理解记录更改时 ArcGIS 如何表示时间十分重要。可用有效时间、事务时间或协调世界时间 (UTC) 记录历史。有效时间是在真实世界里发生更改的实际时刻,并通常由正在应用更改的用户记录下来。事务时间是在数据库中记录事件的时间。系统会自动生成事务时间。UTC 是通过 Internet 控制时钟和时间的主要标准。

当将更改保存到或提交到 DEFAULT 版本时,对于版本化数据存档,ArcGIS 使用事务时间(基于当前服务器时间)来记录对数据所做的更改。事务时间和在真实世界中发生该事件的时间很少是同一时间。在真实世界中发生的事件和在数据库中记录的事件之间会有时间差。例如,2006 年 5 月 14 日销售了一块宗地,然而直到 2006 年 6 月 5 日才记录此数据更改。针对这一更改,2006 年 6 月 5 日将作为事务时间被记录到存档类。

当发生编辑时,ArcGIS 会将事务存档到存档类。真实世界事件的时间和事务时间之间的区别可能看起来不是很明显,但当根据存档信息执行查询时就会变得十分明显。在生产系统中,编辑和更新数据方面的工作积压是很普遍的事,这将导致有效时间和事务时间之间的时间滞差。

如果许多不同用户或部门编辑数据库,在这种多用户环境中记录历史时,有效时间和事务时间之间的差异也是一个问题。在数据库中执行和记录更改的顺序可能与真实世界中发生这些更改的顺序不一致。

非版本化数据存档使用 UTC 代表时间。在编辑会话期间,保存编辑内容时会记录对数据的更改。

启用非版本化数据存档

启用存档时,gdb_from_date 属性和 gdb_to_date 属性会添加到基表。所有行的 gdb_from_date 属性都带有启用存档操作的日期和时间的时间戳。所有行的 gdb_to_date 属性都带有 12/31/9999 时间戳。无论何时只要一个属性具有 gdb_to_date 12/31/9999,它都是对象的当前表示。保存编辑内容时,地理数据库会对更改进行自动存档,如下所示:

  • 新建要素的 gdb_from_date 属性值设置为存档操作时间戳,gdb_to_date 属性值设置为 12/31/9999。
  • 在编辑会话中更新的要素通过将 gdb_to_date 属性值设置为存档操作的时间戳来更新基表中的关联行,并插入带有 gdb_from_date 属性值和 gdb_to_date 属性值的新行,其中 gdb_from_date 属性值被设置为存档操作的时间戳,gdb_to_date 属性值被设置为 12/31/9999。
  • 在编辑会话中删除的要素通过将 gdb_to_date 属性值设置为等于存档操作的时间戳来更新基表中的关联行。

启用版本化数据存档

当启用存档时,指定类的表示 DEFAULT 版本的所有行都将按同一时间戳被复制到存档类。所有行的 gdb_from_date 属性都带有启用存档操作的日期和时间的时间戳。所有行的 gdb_to_date 属性都带有 12/31/9999 时间戳。无论何时只要一个属性具有 gdb_to_date 12/31/9999,它都是 DEFAULT 版本中对象的当前表示。当将编辑内容保存或提交到 DEFAULT 版本时,地理数据库会自动将更改存档到存档类。如下所示:

  • 在 DEFAULT 版本中创建的要素在存档类中被表示为带 gdb_from_date 属性值和 gdb_to_date 属性值的行,其中 gdb_from_date 属性值被设置为存档操作的时间戳,gdb_to_date 属性值被设置为 12/31/9999。
  • 在 DEFAULT 版本中更新的要素通过将 gdb_to_date 属性值设置为存档操作的时间戳来更新存档类中的关联行,并插入带 gdb_from_date 属性值和 gdb_to_date 属性值的新行,其中 gdb_from_date 属性值被设置为存档操作的时间戳,gdb_to_date 属性值被设置为 12/31/9999。
  • 在 DEFAULT 版本中删除的要素通过将 gdb_to_date 属性值设置为等于存档操作的时间戳来更新存档类中的关联行。

更新存档表在单个数据库事务中执行。如果在事务过程中遇到了错误,则回滚整个存档操作,因而也不会完成保存或提交操作。一旦改正了错误,就可以再次执行保存或提交操作。

对于每个存档操作,DEFAULT 历史标记使用存档操作的值进行更新。当使用历史版本并选择 DEFAULT 历史标记时,这确保存档类的当前表示等同于事务 DEFAULT 版本中的版本化类的表示。

访问存档类实际上可以比使用等同的版本化类占用较少的数据库资源。

如果应用程序开发者对捕捉存档操作时间的事件感兴趣,可参阅“软件开发者工具包”中的 Iversionevents2 接口上的 OnarchiveUpdated 事件。

对历史版本的查询在存档类上执行:

添加要素

在地籍数据库中的要素显示宗地号 116 及其对应行。对于版本化数据,此行将出现在存档类中。对于非版本数据,此行将出现在宗地的基表中。gdb_from_date 显示创建时间和日期,而 gdb_to_date 显示 12/31/9999,因为自从启用存档以来还没有修改或删除要素。

 

插入要素(宗地 117)时,使用通过此提交操作的时间戳进行更新的 gdb_from_date 插入行。新行的 gdb_to_date 属性显示 12/31/9999,因为还没有更新或删除该要素。

注:

某些编辑操作,例如使用“自动完成面”工具创建要素以及验证地理数据库拓扑,会在现有要素上插入折点来使相邻要素之间保持重合。例如,如果使用“自动完成面”工具创建与现有面相邻的新面,则会在新要素的草图与现有要素交叉的位置为现有面添加折点

更新要素

当更新要素时,会通过存档操作的时间戳设置 gdb_to_date,并插入新行以显示要素的当前表示。此新行的 gdb_from_date 通过存档操作的时间进行设置,而 gdb_to_date 仍将显示 12/31/9999,因为还没有修改或删除该行。

下图显示执行更新操作前的两块宗地 116 和 117 及其相应的 gdb_from_date 和 gdb_to_date 属性。

如果扩展宗地 117 的宗地边界,则使用存档操作的时间戳更新 gdb_to_date,并插入新行。该新行的 gdb_from_date 属性将通过存档操作的时间和日期进行设置。

例如,更新时刻 (7/12/2005 5:34:22 PM) 之前的查询将显示宗地 117,因为它在更新前就已经存在。7/9/2005 2:23:43 PM 时刻之前的查询将不显示宗地 117,因为这时它还尚未创建。更新时刻 (7/14/2005 3:45:23 AM) 之后的任何查询将显示带扩展边界的宗地 117 的当前表示。

了解有关查询存档类的详细信息

删除要素

当删除要素时,gdb_to_date 将通过存档操作的时间戳进行更新。下图显示宗地 116 和 117 及其相应的 gdb_from_date 和 gdb_to_date 属性。

删除宗地 117 时,gdb_to_date 属性将通过存档操作的时间戳进行更新。

关于版本化数据存档的技术注意事项

下列情况会在存档类中创建时间差:

编辑者正在直接编辑 DEFAULT 版本,并在编辑会话中删除一个对象。

然后,编辑者保存编辑内容,这将通过删除该对象的时间戳来更新存档类的 gdb_to_date 属性。

如果同一对象在子版本中被更新并与 DEFAULT 版本相协调,则将产生一个冲突。

在冲突解决过程中,如果编辑者选择使用该行的更新表示替换冲突,则当提交版本时,在 DEFAULT 版本中将还原该行。该存档操作将新行插入到该存档类,并将 gdb_from_date 属性设置为存档操作的时间戳,将 gdb_to_date 属性设置为 12/31/9999。

因此,当编辑者查看对象的时间谱系时,在 gdb_to_date 和 gdb_from_date 日期之间将包含一个时间差,在这段时间中,DEFAULT 版本中没有该对象。

4使用历史版本

要检查存档信息,必须通过历史版本访问数据。连接到历史版本时,也意味着连接到特定的时刻。该时刻可以为数据库的当前时间(DEFAULT 历史标记)、预定义的历史标记,或是指定的数据库日期和时间。

这是什么日期和时间?
使用存档信息时,重要的是要了解记录在存档的 gdb_from_date 和 gdb_to_date 字段中的日期和时间反映了事务发生时的日期和时间 - 添加要素、编辑要素或从要素类移除要素时的日期和时间。此日期和时间从服务器 OS 接收。这会影响您访问和查询存档的方式。

如果您在服务器以外的时区工作,则基于某个时刻的查询必须反映服务器的时间,而不是客户端 OS 的时间。例如,如果在 9:05 a.m. (PST) 执行了编辑,但 DBMS 位于纽约,则为此编辑记录的事务处理时间实际上是 12:05 p.m. (EST)。随后,如果要查询 9:05 a.m. 的历史版本,您将看不到该编辑,因为在服务器上 9:05 a.m. 时该要素尚未创建。要查看这个新添加的要素,需要在 DBMS 上查询 12:05 p.m. 的历史版本。

连接到不同的历史版本

要连接到由 DEFAULT 历史标记表示的日期和时间之外的日期和时间,可定义一个历史标记(用于快速连接到重要日期和时间的特定时刻),然后选择连接到该历史标记,或是输入一个日期和时间。请参阅历史标记,以了解创建历史标记的方式和时间。

可使用两种不同方法在 ArcGIS for Desktop 中连接到历史版本:使用地理数据库连接属性 或切换版本 对话框。

从“地理数据库连接属性”对话框连接到历史版本

地理数据库连接属性 对话框允许指定要与其进行连接的地理数据库版本。要打开该对话框,右键单击 ArcCatalog 或 ArcMap 的目录树中的数据库连接,并单击地理数据库连接属性。

首先,选择历史版本。然后可以选择是要从历史标记列表中挑选,还是从特定日期和时间中挑选。

如上所述,可以单击刷新数据库时间按钮,以使用当前数据库时间填充特定日期和时间字段。或者,也可以使用下拉日历在其中选择日期,或是直接在字段中输入日期和时间。

切换版本后,在 ArcCatalog 中预览的此连接文件的数据或在 ArcMap 中查看的数据就是从中可访问引用已选时刻的历史版本的、已启用存档的数据。

从“切换版本”对话框连接到历史版本

要打开切换版本 对话框,请执行以下操作之一:

  • 右键单击 ArcMap 内容列表中的数据库,并单击更改版本。
  • 单击 ArcMap 的版本管理 工具条上的切换版本按钮 。

对话框打开之后,单击底部的历史选项卡。

可从历史标记列表中进行选择,或者选择或输入特定的日期和时间。

在连接到不同的历史版本之后,ArcMap 就将显示所选时刻对应的历史版本参照数据。

5使用历史标记

​​​​“历史”子选项卡
可通过地理数据库管理 对话框中的版本选项卡的历史子选项卡创建、删除以及编辑历史标记。此对话框可通过目录树中的数据库连接打开,也可通过单击版本管理 工具条上的版本管理器按钮打开。

要创建历史标记,可在历史版本列表中右键单击,并单击新建标记。

通过“地理数据库管理”对话框中的“版本”选项卡的“历史”子选项卡创建历史标记

将弹出新建标记 对话框。

可赋予新建标记名称,并指定想要该标记表示的数据库日期和时间。

历史标记管理器
可通过地理数据库历史 工具条访问历史标记管理器。要启用地理数据库历史 工具条中的历史标记管理器按钮,请从内容列表的源选项卡中选择一个工作空间。

 

历史标记管理器 的工作方式与地理数据库管理 对话框中的版本选项卡的历史子选项卡的工作方式类似。可查看已创建的所有历史标记的列表,并可重命名或移除历史标记以及编辑历史标记所指代的时间点。

 要通过历史标记管理器 对话框创建新的历史标记,请单击新建按钮并为标记指定名称以及时间戳。

要通过历史标记管理器 编辑历史标记的属性,请单击编辑按钮。之后可更改与所选历史标记相关联的名称和时间戳。

 

6使用地理数据库历史查看器

当使用历史版本时,在不同时刻之间导航的简易方法是使用“地理数据库历史查看器”,该查看器位于地理数据库历史工具栏上。

 

要启用“地理数据库历史查看器”,必须满足下列条件:

  • 在地图中必须有数据存在。
  • 地图中至少一个数据集或类必须启用存档。
  • 必须正在使用历史版本(了解如何切换到历史版本)。

当满足上述条件时,启用存档的图层和表将在查看器中列出。

“地理数据库历史查看器”允许您通过选择历史标记或日期和时间来选择历史版本。

(请参阅历史标记相关部分,以了解创建历史标记的方式和时间。)

 

选择要连接的时刻。在对话框的“历史日期和时间”部分中,可以通过选择指定历史标记或设置特定日期和时间在不同时刻之间进行切换。刷新按钮 将使用历史标记的当前列表填充“通过历史标记设置”下拉列表。如果最近建立了一个历史标记,在您单击“刷新”按钮之前,它不会显示在列表中。

“刷新数据库时间”命令 将用当前数据库时间来更新日期控件。这可确保客户端和数据库服务器之间的日期和时间保持一致。

一旦选择了历史标记或日期和时间,就可以单击“应用”按钮用指定的时刻来刷新地图。当选中了“自动应用”时,在“地理数据库查看器”的“历史日期和时间”部分进行的任何更改都将用指定的时刻自动刷新地图。

7直接使用存档类

当启用要存档的数据集或类时,存档类将由地理数据库进行创建和维护。无法在数据浏览器中访问存档类,但可以将其添加到 ArcMap 中进行查看和查询。

要将存档类添加到 ArcMap 中,必须先在内容列表中高亮显示启用了存档的图层或表。然后,将启用地理数据库历史 工具条中的添加历史存档按钮。

 

单击该按钮,将存档类添加到地图中。存档类会显示自启用存档功能以来所做的每次修改。存档类无法进行编辑,而仅供分析使用。

通过将存档类添加到地图,可以直接使用存档。可以对图层进行符号化,以帮助您进行分析。例如,可以基于图层中要素的上次更新时间对这些要素进行以GDB_FROM_DATE 字段作为符号系统的值字段的颜色编码。

有两种查询类型可以解决在处理类的历史时所遇到的大部分问题:时刻查询和范围查询。

时刻查询用于查询特定的时刻,这与使用历史版本并连接到感兴趣的日期和时间相同。在尝试确定特定时刻的数据外观或者特定位置在给定时刻的内容时,这些查询很有用。

范围查询用于操作两个时刻(起始时刻和终止时刻)之间这段时间内的数据。这些查询可用于查看某个要素或位置在一段时间内如何发生变化。通过查看时间范围,可以追踪对象在其生存时间内如何进行更新。这可向您显示数据是如何演化的,并且您还能看到和比较对象的变化。

时刻查询或范围查询均可在 ArcMap 定义查询构建器中构造。

如果对查看具体时间的特定要素感兴趣,请参阅该要素的对象 ID 并输入相应的日期和时间。

以下是这种时刻查询的示例:

OBJECTID = 23 AND GDB_FROM_DATE <= '2005-10-12 14:11:20' and GDB_TO_DATE > '2005-10-12 14:11:20'

需要注意的是,GDB_FROM_DATE 字段和 GDB_TO_DATE 字段的语法可能会因数据库存储日期的方式不同而有所差异。通过选择 GDB_FROM_DATE 或 GDB_TO_DATE 并单击查询构建器中的获取唯一值,可以轻松校验该格式。

要使用查询构建器执行范围查询,可通过右键单击存档类并选择属性来打开查询构建器 对话框。单击定义查询选项卡,然后单击查询构建器按钮。

 

存档类具有两个用来帮助查询日期和时间范围的字段:GDB_FROM_DATE 和 GDB_TO_DATE。选择其中一个字段,然后单击获取唯一值按钮来查看日期字段的值和语法。随后,可使用这些值构建查询,或者输入您自己感兴趣的日期。

例如,如果要查看某个地理区域在 2003 年 5 月 1 日到 2005 年 6 月 1 日之间的变化情况,则可构建以下查询:

GDB_FROM_DATE > '2003-05-01 12:00:00' AND GDB_FROM_DATE < '2005-06-01 12:00:00'

这将返回在这两个日期之间所插入和更新的全部行。

可以检测两个时刻之间的所有插入、更新或删除内容。如果开发者对检测这些更改类型感兴趣,可以参阅“软件开发者工具包”中的 IVersionedTable 接口。

8架构更改和存档 

存档类用于保存在启用的数据集或对象类上发生的编辑事务。因此,存档类的架构必须与数据集或对象类的架构一致。

对数据集或对象类所做的架构更改将自动推送到存档类。例如,如果将属性列添加到要素类,则该列会自动添加到存档类。如果从要素类删除属性列,则该列也会从存档类中移除,并删除该列的所有存档信息。

地理数据库存档不创建有关架构更改的元数据。地理数据库存档的目的是保存已启用类的编辑事务。

存档类可以使用对地理数据库行为的更改,但并不会存档对 ArcSDE 知识库的实际更改。记录地理数据库行为更改由工作流过程负责。

不要直接更改存档类的架构。如果直接改变存档类,则可能会损坏该类并丢失存档的事务。ArcGIS 将存档类的访问权限限制为只读,以防止直接编辑存档类和更改存档类的架构。

9禁用存档 

禁用存档会在保存编辑内容或将编辑内容提交到 DEFAULT 版本时停止存档类的自动更新。

禁用存档时,对于数据集中启用的每个类,系统都将提示您保存或放弃存档类。如果禁用存档时选择不删除相关联的存档类,可将地理数据库中的表保留为具有相应“自”和“至”属性的临时表。

禁用存档的提示

  • 必须首先对某个类禁用存档,然后才能将其取消注册为版本。
  • 删除启用了存档的要素数据集或类仍会保留存档类。

步骤:

  1. 要禁用存档,请在 Catalog 目录树中右键单击对象类或数据集,然后单击存档 > 禁用存档。

    禁用存档时将显示以下消息:

     

  2. 有多个选项可供选择以保留或删除存档表。
    • 如果要删除与该数据集相关联的存档类,请单击是。
    • 单击否可将存档类保留为具有 gdb_from_date 和 gdb_to_date 属性的临时表,但在 ArcMap 中仍可查询和查看该存档类。
    • 如果要删除此存档类以及后续所有存档类,请单击全是。
    • 如果要将此存档类以及后续所有存档类保留为临时表,请单击全否。
    • 单击取消可退出禁用操作而不执行任何操作。

10存档情景

地理数据库存档允许数据随时间变化时对数据进行分析。存档类和地理数据库历史查看器可用作问题解决工具,它们十分有用。以下为一些可能用到地理数据库存档的假设情景:

正在绘制森林大火火险地图的消防长官可进行地理数据库存档以帮助监控火势的蔓延情况。该长官根据火线创建编辑并以二十分钟为时间间隔不断保存这些编辑,便可创建随时间发生变化的火险边界存档。然后,他可使用地理数据库历史查看器切换到该火灾历史的重要时刻。例如,如果风力加大且火险强度上升并变得不可预测,该长官可切换到此事件之前的某个时间点来查看之前的火险情况。这在试图控制火灾蔓延时有助于合理分配消防资源。

如果该消防长官想要查看大火随时间变化的蔓延情况,他可将火线存档类添加到地图中。当火灾边界随火势的蔓延而发生变化时,每二十分钟便会在存档类中编辑并更新一次火线。该长官根据 gdb_to_date 字段对火线进行颜色编码,便可查看随时间变化的每个火线实例。生成的地图每二十分钟便会显示一个不同颜色的圆环,用于描绘不断蔓延的火灾边界。

一个相似的示例在宗地管理方面十分有用。当随着时间的推移而不断对宗地进行编辑时,可将其保存在存档类中。如果想要查看宗地在某一时刻的情况(例如,出于纳税方面的考虑),便可使用地理数据库历史查看器切换到相应的日期和时间。相反,如果想要查看某一宗地随时间的变化情况,则可将宗地存档类添加到地图中,并依照其 ID 号选择相应的宗地。这会显示所选宗地随时间变化的每个制图表达。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

挣钱花388

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值