可用地图和图像缓存属性
在本主题中
为地图或图像服务缓存所设置的属性可大大影响切片创建和使用的成功几率。
本主题将介绍可用的地图和图像缓存属性以及如何对各属性做出最佳决策。有关创建切片的详细信息,请参阅创建地图缓存切片的策略。
访问缓存属性
服务编辑器对话框的缓存选项卡用于设置缓存属性。以下主题说明了如何访问缓存选项卡:
打开缓存选项卡后,首先需要选择使用缓存中的切片绘制地图或影像服务的选项。如果选择根据数据动态绘制,服务器每次都会绘制地图,且地图或影像服务不会使用创建的任何缓存切片。
本主题余下部分介绍缓存选项卡及其高级设置子选项卡上的可用设置。开始创建缓存后,有些选项(如切片宽度和高度)不可更改,除非删除现有缓存并重新开始。因此,提前规划缓存的切片方案和其他属性至关重要。
完成缓存属性的设置后,右键单击目录树中的服务,然后单击管理缓存 > 管理切片以开始创建切片。
缓存选项卡设置
以下各小节说明了可在缓存选项卡中指定的缓存设置。有关高级设置子选项卡中属性的介绍位于下文一个单独部分中。
切片方案
切片方案包括缓存的比例级别、切片尺寸和切片原点。这些属性定义了缓存边界的存在位置,而且在某些客户端中叠加缓存时对于匹配操作十分重要。
有多个选项可选择用于切片方案:
ArcGIS Online/Bing 地图/Google 地图
选择 ArcGIS Online/Bing 地图/Google 地图使您可以将来自这些在线地图服务的切片叠加在缓存切片之上。ArcGIS 对源地图进行动态投影,投影至此切片方案需要的坐标系中,即 WGS 1984 Web Mercator (Auxiliary Sphere)。如果想要增强创建切片时的性能,那么可在发布服务之前将数据和数据框投影到此坐标系中。
如果要将 ArcGIS Online、Bing 地图或 Google 地图中的地图叠加到缓存,则需要 ArcGIS Online/Bing 地图/Google 地图切片方案。ArcGIS Online 叠加实际上可在所有最新的 Esri 客户端应用程序中实现。Bing 地图叠加可在 ArcGIS.com 地图查看器以及很多 ArcGIS Web 查看器和 API 中实现。Google 地图叠加可通过 ArcGIS API for JavaScript Extension to the Google Maps API 来实现。
ArcGIS Online/Bing 地图/Google 地图切片方案的优势在于它在 Web 地图领域内广为熟知,所以您的切片将与其他使用此切片方案的组织的切片相一致。即使您不打算叠加这些广为熟知的地图服务,仍然可以选择此切片方案以便于实现互操作。
ArcGIS Online/Bing 地图/Google 地图切片方案可能包含过度放大以至于无法在地图中使用的比例。在大比例下进行缓存相当耗时,且会占用大量磁盘存储空间。例如,切片方案中的最大比例约为 1:1,000。在此比例下缓存整个美国大陆可能将耗费数周时间并需要数百 GB 的存储空间。如果尚未准备好在此比例级别下进行缓存,可在细节层次范围中将其删除(有关“细节层次”的信息,请参阅下一小节)。
警告:
相对于删除切片方案中的比例,选择不在该比例下创建切片效果更佳。如果从 ArcGIS Online/Bing 地图/Google 地图切片方案中删除比例,可能无法叠加该服务的切片。
切片方案文件
如果无法使用 ArcGIS Online/Bing 地图/Google 地图切片方案中的比例或坐标系,可以创建您自己的切片方案。使用服务器工具箱中的生成地图服务器缓存切片方案工具来生成 XML 切片方案文件。本主题稍后将介绍此工具对话框需要您提供的多项设置。无论何时创建缓存,您都可以浏览至此切片方案文件,从而导入所有您偏好的比例和设置。
旧版本:
在 10.0 及较低版本中,ArcGIS Online 使用基于 WGS 1984 地理坐标系(使用 512 x 512 像素切片)的切片方案。如果运行的服务需要使用此切片方案,必须从现有服务或切片方案文件中加载。
现有的缓存地图/图像服务
如果想要匹配现有的缓存服务切片方案,请选择此选项。系统将提示您浏览至该服务。
匹配的切片方案可确保切片在 Web 应用程序和其他混合 Web 应用程序中正确叠加。
如果选择此选项,源地图文档和用于导入切片方案的地图应使用相同的坐标系。
建议
选择此选项后,系统将提示您想要的比例级数,随后 ArcGIS 将给出一些建议比例。建议的比例以 1:1,000,000 为下限,按 2 的乘方递增或递减,并将最接近于源地图文档范围的级别作为起始比例。
例如,如果源地图文档的范围是 1:121,000,000 并定义三个比例级别,ArcGIS 将给出以下三个建议比例级别
- 1:128,000,000
- 1:64,000,000
- 1:32,000,000
一般来说,应该将请求的建议比例数限制在 20 个或以下。如果地图的全图范围涵盖相对小的区域(例如城市),则可能无法获得请求数量的比例。可使用高级设置选项卡手动添加更多的比例。
熟悉缓存创建过程后,最好选择自定义比例级别,而不是要求软件为您建议比例。如果可能,应在开始设计地图之前就选择比例。这样,所设计的地图在各种比例下都会具有良好的显示效果。
细节层次
切片方案通常含有多个比例。根据特定地图,您可能希望放弃在切片方案中极大的或极小的比例处创建缓存。ArcGIS 检查地图中的比例可变选项,并提供进行缓存的最低和最高比例范围的建议值。可以通过移动缓存选项卡上的滑块调整该范围。
其余比例并不会从切片方案中移除,但您将无法创建它们的切片,除非您返回缓存选项卡,并将它们包括在范围内。
高级设置
本部分介绍服务编辑器的缓存 > 高级设置子选项卡中的属性。
比例
创建切片方案时,采用哪些地图比例创建切片是最为重要的选择。
可在两个位置输入比例列表:
- 可在第一次创建切片方案时,在“生成地图服务器缓存切片方案”工具中直接输入比例。
- 在创建新缓存时,加载了切片方案以后,可对服务编辑器的缓存 > 高级设置子选项卡中的比例列表进行修改。处理影像时,在此输入比例非常方便,因为可以在列表中输入像素大小。
输入比例时,可以输入比率或仅输入比例的分母(例如输入 36000,列表中将会显示 1:36,000)。
如果输入像素大小,则可以键入像素大小值(采用地图单位)用于生成的切片。有时缓存图像时该选项十分有用。例如,您可能要向像素分辨率为一米的缓存中添加比例。
选择一组比例的简便方法是:确定用户查看地图时需要使用的最接近比例,然后重复地将比例的分母乘以 2,直至达到仅在一或两个切片内便可包含全部关注区域的比例。例如,如果正为某个城市设计切片方案,用户查看地图应使用的最接近比例为 1:2,400,则比例可能为 1:2,400、1:4,800、1:9,600、1:19,200 或 1:38,400,直到达到一个可在计算机屏幕上一次性看到整个城市的比例。
最小缓存比例
这是想要创建切片的最小比例。这不必是您的切片方案中的最小比例。
例如,您的切片方案可能包括比例 1:2,000,000,但您想要其他人创建切片使用的最小比例为 1:500,000。您可以将 1:500,000 设置为您的最小缓存比例,那么其他人运行“管理地图服务器缓存切片”时能够使用的最小比例将为 1:500,000。
该属性与您在缓存选项卡中设置的细节层次范围的下限相对应。
最大缓存比例
这是想要创建切片的最大比例。这不必是您的切片方案中的最大比例。
例如,您的切片方案可能包括比例 1:1,000,但您想要其他人创建切片使用的最大比例为 1:4,000。您可以将 1:4,000 设置为您的最大缓存比例,那么其他人运行“管理地图服务器缓存切片”时能够使用的最大比例将为 1:4,000。
该属性与您在缓存选项卡中设置的细节层次范围的上限对应。
缓存目录
服务器缓存目录是磁盘上用于存储缓存切片的文件夹。一个服务器缓存目录可存储多个缓存;但可将多个服务器缓存目录添加到服务器。在创建 ArcGIS Server 站点时,会在您指定的位置为您创建服务器缓存目录。有关详细信息,请参阅关于服务器目录。
如果计划将其他 GIS 服务器计算机添加到您的站点,则需要在服务器缓存目录上启用文件共享,以便参与的所有计算机都可以看到它。有关详细信息,请参阅创建服务器目录和配置多机部署。确保为 ArcGIS Server 帐户授予服务器缓存目录的写入权限,以使服务器可以成功地将切片放置在该目录中。完成创建缓存时,可选择删除写入权限。
可打开服务器缓存目录以检查缓存切片和切片方案文件 conf.xml。另一个文件 conf.cdi 包含服务的默认范围信息,在 ArcMap 中以栅格数据集形式查看缓存时需要使用它。地理数据库 status.gdb 包含 ArcGIS 在其缓存状态报告中显示的信息。
切片以目录等级形式组织。顶级目录和地图服务具有相同的名称,除非服务创建于 GIS 服务器文件夹。如果地图服务在某个文件夹中,则顶级目录的名称为 <文件夹名称>_<地图服务名称>。
警告:
如果更改地图服务名称或地图数据框名称,需要手动重命名缓存文件夹以保持匹配。
在顶级目录下,会发现要进行缓存的地图中特定数据框的子目录。接下来,会发现单个子目录 _alllayers。在该子目录中,会发现对应于各个细节层次的子目录。这些细节级别子目录的结构取决于使用的是紧凑型存储格式还是松散型存储格式。
- 如果使用紧凑型缓存格式,会在级别文件夹中直接看到包文件。这些包文件包含切片。
- 如果使用松散型缓存格式,会看到每个切片行的子目录,最后会看到在行中表示特定列的实际图像文件。
服务器缓存目录还可包含一个 GlobeCache 文件夹,该文件夹包含服务器缓存目录内存储的所有 globe 缓存。
要缓存的感兴趣区
如果在发布服务时选择 ArcGIS 自动构建缓存,该设置会确定地图的哪些区域将会创建切片。选项如下:
- 地图的全图范围 - 该选项缓存地图中所有数据的整个边界框。这是默认选项。将应用在 ArcMap 中通过数据框属性设置的自定义全图。
- 地图的当前范围 - 该选项缓存当前发布的地图文档的范围;也就是说,地图服务的初始范围。
- 从要素类导入 - 该选项用于仅缓存与所选要素类中的要素边界相交的区域。例如,如果想将切片的创建仅限制在覆盖加利福尼亚州的区域内,可浏览至包含加利福尼亚州边界的简单要素类。
当缓存较大或感兴趣区不是矩形时,建议使用导入要素类选项。有关为此准备并选择要素类的提示,请参阅基于要素边界的地图缓存。
您在此处设置的感兴趣区仅适用于在发布时自动生成的缓存。该区域始终会由您在手动运行“管理地图服务器缓存切片”工具时所设置的感兴趣区域覆盖。如果没有使用“管理地图服务器缓存切片”明确设置感兴趣区,则将缓存地图的全图。
切片格式
此设置决定地图服务在创建切片时要使用的输出图像格式。选择图像格式十分重要,因为它将确定切片在磁盘上的大小、图像质量以及能否使切片背景透明。
在初始化新缓存时,ArcGIS 检查地图中的图层,并为您选择默认图像格式。如果地图仅包含矢量图层,则默认图像格式为 PNG。如果至少检测到一个栅格图层,则默认图像格式为 MIXED。
应检查此默认格式,并确定它是否可以达到您绘制地图的目的。以下为可用图像格式及其相应用途的摘要:
- PNG - 对于每个切片,此格式确定将尽量降低切片存储空间而不降低显示效果的 PNG 位深度。这适用于很多矢量地图,尤其是颜色种类较少的地图、单色条带较多的地图或者叠加网络。如果不确定使用哪种 PNG 格式,请首先尝试此格式。
- PNG8 - PNG 8 用于需要具有透明背景的叠加服务,例如道路和边界。PNG 8 可在磁盘上创建非常小的切片且不损失任何信息。
当地图使用了抗锯齿功能时,采用 PNG 或 PNG 32 而非 PNG 8 将会看到较高质量的线和标注。如果由于渐变填充或山体阴影而导致地图包含大量颜色,可能还需要采用 PNG 或 PNG 32。
- PNG24 - 可将 PNG 24 用于超过 256 种颜色(如果少于 256 种颜色,使用 PNG 8)的叠加服务,例如道路和边界。如果将在 Internet Explorer 6 或更早版本中查看切片,请勿使用 PNG 24。
- PNG32 - PNG 32 用于超过 256 种颜色的叠加服务,例如道路和边界。PNG 32 特别适用于对线或文本启用了抗锯齿的叠加服务。PNG 32 在磁盘上创建的切片比 PNG 24 大,但所有浏览器都完全支持这种切片。
- JPEG - 此格式用于颜色变化较大且不需要透明背景的底图服务。例如,栅格图像和非常详细的矢量底图特别适合使用 JPEG。
JPEG 为有损图像格式。在不影响图像显示效果的情况下,它会尝试有选择地删除数据。这会在磁盘上产生很小的切片,但如果地图包含矢量线作业或标注,它可能会在线周围生成过多的噪声或模糊区域。如果发生这种情况,可尝试将压缩值从默认的 75 增加到更大的值。更高的值(如 90)可以生成可接受的线作业质量,同时还可保证 JPEG 格式的小切片优势。
您将确定可接受的图像质量。如果愿意接受图像中存在少量噪声,选择 JPEG 可节省大量的磁盘空间。更小的切片同样意味着浏览器可更快地下载切片。
- MIXED(混合) - 混合缓存在缓存中心使用 JPEG,同时在缓存边缘使用 PNG 32。如果要在其他图层上完全叠加栅格缓存,应使用混合模式。
创建混合缓存时,在检测到透明度的任何位置(也就是数据框背景可见的位置)都会创建 PNG 32 切片。其余切片使用 JPEG 构建。这可降低平均文件大小,同时可在其他缓存上进行完全叠加。如果在这种情况下不使用混合模式缓存,将在图像叠加其他缓存的外围看到不透明的凸边。
- LERC - 有限错误栅格压缩
(LERC) 是一种高效的有损压缩方法,建议用于较大像素深度的单波段或高程数据(如浮点型、32 位、16 位或 12 位数据)。对于浮点数据而言,LERC 比 LZ77 的压缩效果好 5 到 10 倍,压缩速度快 5 到 10 倍。对于整型数据,LERC 也优于 LZ77。使用整型数据并且指定的错误限制为 0.99 或更低时,LERC 被视为无损压缩。
注:
有限错误栅格压缩 (LERC) 仅适用于影像服务;不支持地图服务。
3D 视图中广泛使用高程数据或表面来表示地面,例如 terrain 模型。您可以使用不表示地面的表面,例如位于地表上方的臭氧图层或位于地表下方的地质基层。如果使用 LERC 压缩方法分配不在地平面上的表面,则强烈建议以所有细节层次发布数据。这将确保在查看数据时缩小的范围不会超过最粗糙的分辨率,否则,将停止对内容进行渲染。然而,对参与地表的高程内容来说,这并不重要,因为表面可用于填充可能存在的任何空隙。
- 如果选择 LERC,则使用压缩输入对话框指定压缩值。压缩代表适用于每个像素的最大容差错误值(并非图像的平均值)。该值以镶嵌数据集的单位指定。例如,如果误差为 10 厘米而镶嵌数据集的单位为米,则输入 0.1。
- 如果源数据在特定的比例上不受支持,或者概视图不存在,则基于 LERC 的缓存服务不会为了进行绘制而执行重采样。此外,基于 LERC 的缓存服务还将包含一个列出服务是否包含高程数据的属性文件。在绘制全部范围的 3D 场景时,基于 LERC 的缓存所使用的缓存切片大小应比标准 256 x 256 大半个像素。
- LERC 格式使用非转换压缩算法,因此压缩值或最大错误允许值将在 0 到 1,000 的范围内变化。
提示:
可能需要更改默认图像格式的最常见情形是在构建使用抗锯齿功能的、仅基于矢量的底图时。在这种情况下,压缩质量较高的 JPEG 或 MIXED 格式比默认的 PNG 更适合,因为生成的切片在磁盘上要小很多。
确定大缓存的图像格式之前,先针对有代表性的地图区域构建一个较小的缓存并在测试应用程序中检查切片质量和性能。如果要使用多个缓存,构建每个缓存的测试缓存并将其添加到测试应用程序以确保它们按预期方式叠加。这将使您有机会在创建整个缓存之前做出调整。
要创建一个小型测试缓存,请先使用 ArcMap 中的编辑工具创建一个包含待测试区域周围的小矩形的新要素类。然后使用管理地图服务器缓存切片工具对话框底部的选项,基于要素类的边界创建切片。浏览至包含测试区域的要素类,然后创建切片。
压缩
使用 JPEG 或混合图像格式缓存时,压缩指的是执行 JPEG 压缩的程度。较高的值表示较高的 JPEG 质量,因此压缩较少。对于图像而言,55 至 75 之间的值通常足以不造成任何可见的质量降低。对于矢量和其他明确定义的要素或区域而言,推荐将质量更高的 90 作为起点。
按需创建切片
如果选中此框,则当客户端首次请求之前未缓存区域的切片时,会将这些切片添加到缓存中。这是确保人们在查看您的缓存时始终能看到地图的好方法,即使您没有时间来初始创建各个比例级别的所有切片。
其他高级设置
本部分介绍一些高级缓存设置,可通过服务编辑器的缓存 > 高级设置子选项卡中的高级按钮查看。仅当使用“生成地图服务器缓存切片方案”工具生成新的切片方案时,才可设置这些属性(切片原点、每英寸点数、切片宽度和切片高度)。
切片原点(地图单位)
切片方案原点是指切片方案格网的左上角。原点不一定代表创建切片的起始点;只有在达到地图全图范围或感兴趣区要素类时才是这样。进行缓存时使用公用切片方案原点可确保它们能够在 Web 应用程序中相互叠加。
大多数情况下,应保持软件的默认切片方案原点。默认原点为地图文档定义的坐标参考的左上点。如果地图文档中未定义坐标参考,则将所有图层范围的并集中最大的范围加倍,然后使用所得范围的左上角作为原点。
如果将切片方案原点更改到非默认位置,则应注意只能在切片方案原点右下方的地图区域中创建切片。如果只想缓存地图的某一区域,相对于更改切片方案原点,基于要素类边界创建切片是更好的选择。
每英寸点数(DPI)
每英寸点数 (DPI) 是指服务器将生成的缓存切片的分辨率。默认值 96 通常完全可满足需要,除非在您所工作的网络中,大多数客户端计算机都具有不同 DPI。请注意,调整 DPI 会影响切片的比例。
切片高度和切片宽度
切片的默认宽度和高度为 256 像素。建议使用 256 或 512。如果要构建的缓存将与另一缓存相叠加,应确保对两个缓存均使用相同的切片宽度和高度。
选择较小的切片宽度和高度可提高向缓存请求切片的应用程序的性能,因为需要传输的数据较少。但对于松散缓存,切片越小,缓存越大且创建时间越长。
存储格式
可选择将切片分组以获取更高的存储效率和移动性,或者以单个文件形式存储每个切片。以下为存储选项:
- 紧凑 - 在紧凑格式下,缓存中的每个文件都包含一包切片。每个包的宽度为 128 个切片,高为 128 个切片,最多包含 16,384 个切片。紧凑缓存的复制速度大大快于松散缓存,且所占用的磁盘空间更少。
- 松散 - 在松散格式下,每个切片都存储为磁盘上的一个文件。这便于查看缓存中的切片;但这会使生成的缓存较大从而耗费更多的时间来创建,并且不易于复制。
有时,缓存中数量巨大的文件和文件夹可能会使复制工具效率低下,包括 Windows 复制/粘贴。因此,紧凑缓存可极大地减少缓存复制时间。如果采用自动缓存更新工作流程,即在过渡服务器上创建切片后将其复制到生产服务器,建议使用紧凑缓存。此外,如果可用磁盘空间有限,也应使用紧凑缓存。
允许客户端本地缓存切片
如果选中此框,将允许 ArcMap 等 Esri 客户端应用程序保留从服务器检索的任何切片的本地缓存。这可帮助客户端在返回到该区域时更加快速地查看切片。客户端必须手动清除其缓存才能从服务器获取较新的切片;因此,如果您要频繁地更新缓存,应考虑取消选中此框。
允许客户端导出缓存切片
ArcGIS 客户端 API 允许应用程序从服务器下载地图切片以供离线使用。您选中允许客户端导出缓存切片复选框时,将授权进行这些下载。
大型切片下载会对服务器性能产生负面影响,并会超出客户端设备的负荷。使用将导出缓存限制为设置可定义客户端一次请求的最大切片数量。
提示:
如果您尝试确定允许下载的最大切片数量,那么查看缓存中的切片总数可提供有用的信息。从缓存完成状态的详细报告中可获取此信息。请参阅查看缓存完成状态。导出的切片放置在服务器输出目录中。在允许客户端导出切片时,您可能想增加服务器输出目录中允许的文件最长保留期限。默认的保留期限 10 分钟可能不足以供客户端在切片遭到清理之前完成检索。有关如何进行此编辑的步骤,请参阅在 Manager 中编辑服务器目录。