使用地理数据库中存储的数据时,创建要素缓存通常可以加快常见 ArcMap 任务的执行速度。要素缓存可以将 ArcMap 当前地图显示中的要素临时存储到本地计算机的内存中。由于从本地内存中检索要素是一个非常快的操作,因此使用要素缓存通常可以提高性能。
要素缓存仅存储地理数据库(以及 ArcIMS 要素服务)中的要素。在地图的某个特定区域内进行操作时,要素缓存尤其有用。
例如,使用通过网络提供要素的 ArcSDE 地理数据库中的数据时,每次更新显示画面时都必须从源数据库中检索当前范围内的要素。使用要素缓存可降低网络和地理数据库的负载,因为 ArcMap 会从计算机内存 (RAM) 中访问此信息。由于在客户端对要素进行缓存,因此可减少客户端在服务器中所需执行的查询数。
某些操作通常可以通过要素缓存来提高性能,这些操作包括:绘制较大或复杂的数据集;标注、编辑和选择要素;为地图上的多个图层检索相同的要素;使用定义查询来绘制要素。例如,标注可能会是一个漫长且耗费成本的过程,需要多次反复访问数据源,因为标注引擎会尝试在地图上放置最大数量的标注。
使用要素缓存工具
ArcMap 具有用于构建和使用要素缓存的工具。可在要素缓存 工具条上找到这些工具。
按钮 | 名称 | 功能 |
---|---|---|
构建要素缓存 | 为当前地图范围内的要素构建缓存 | |
清空要素缓存 | 清空要素缓存 | |
切换自动缓存 | 切换是否自动创建地图的要素缓存 | |
设置自动缓存比例 | 设置自动创建地图缓存的最大比例 | |
清除自动缓存比例 | 清除自动缓存最大比例 | |
显示要素缓存 | 显示要素缓存的范围 | |
缩放至要素缓存 | 将地图缩放至要素缓存的范围 |
可以通过单击构建要素缓存按钮 创建要素缓存。也可以使用自动缓存功能,在移动到当前缓存范围之外时自动更新要素缓存。
在一系列不同的地理区域内进行操作且不想为每个区域都重新构建缓存时,自动缓存功能会非常有用。当不了解要缓存区域的确切边界时,此功能也十分有用。
由于自动缓存可能影响性能,因此应当设置自动缓存最小比例。除非地图缩小超过最小比例,否则将自动创建要素缓存。例如,假设将 1:50,000 设置为最小比例。当地图放大至 1:14,500 时,将会自动创建要素缓存,而当地图缩小至 1:75,000 时,将不会重新构建要素缓存。
对于地理数据库数据,当数据源是 ArcSDE 地理数据库时,要素缓存的优势最为显著。在多用户环境中,坚持在 ArcMap 中使用要素缓存可以显著改善系统的整体性能,因为这样可以减少对地理数据库的查询数、从地理数据库中检索的要素数及整体网络流量。但是,在多用户、非版本化编辑会话中使用要素缓存进行编辑时必须格外小心。
此外,使用文件或个人地理数据库的要素缓存能够获得微小的性能提升,例如在使用大量折点编辑要素时或通过网络访问数据时。
在特定地图范围内进行操作时,要素缓存尤其有用。需要在较大区域内频繁平移和缩放的操作通常不会从要素缓存中获益。
创建要素缓存
- 首先,将地图平移并缩放至要进行操作的区域。
- 在主菜单上,单击自定义 > 工具条 > 要素缓存,以添加要素缓存工具条。
- 单击构建要素缓存按钮 为当前地图范围创建要素缓存。
查看缓存区域的范围
单击显示要素缓存按钮 以查看当前要素缓存的范围。
当前缓存的区域将在地图上闪烁。
- 如果显示要素缓存按钮为绿色,则表示正在使用要素缓存。绿色指示完全处于缓存范围内,且正在使用缓存数据。
- 如果显示要素缓存按钮为红色,则表示当前显示范围的一部分处于缓存区域之外。当前已不再使用缓存数据。
- 如果按钮不可用,则表示完全处于缓存区域之外。当前已不再使用缓存数据。
使用自动缓存
要素缓存可用于包含无数要素的超大型要素类。但是,要最大限度地发挥其效能,有必要为地图设置缓存区域。如果有多个工作区,而且正在处理大型要素类,则可以使用自动缓存来确保高效能表现。
打开自动缓存可以处理地图中的多个区域,并对其中每个工作区中的要素进行自动缓存。关键步骤是设置最小地图比例。缩小超过此地图比例时,自动要素缓存将关闭。这样便可在地图上的不同工作区之间进行导航和移动。缩小超过最小地图比例时,自动缓存将关闭。放大超过最小地图比例后,要素缓存将自动再次打开。
步骤
- 在要素缓存工具条上单击切换自动缓存按钮 以将其打开。
- 接下来,设置最小自动缓存比例。如果缩小超过此地图比例,自动缓存将自动关闭。为此,请将地图缩放至所需的自动缓存比例。大多数情况下,可为典型工作区之一设置地图范围。然后单击设置自动缓存比例按钮。