为地图或图像服务缓存所设置的属性可大大影响切片创建和使用的成功几率。 因为切片缓存生成是一个消耗大量资源的过程,所以了解如何在不花费时间和资源生成不必要切片的情况下为缓存服务提供最佳性能至关重要。 本主题将介绍可在 ArcGIS Server Manager 中使用的地图和图像缓存属性以及每个属性要考虑的事宜。
在 ArcGIS Server Manager 中访问缓存设置
在 ArcGIS Server Manager 中编辑服务时,可以修改其缓存设置。
注:
虽然缓存管理和生成的许多设置在 ArcGIS Server Manager 中可用,但取决于地理处理工具的设置不可用。 要修改这些内容,可以在 ArcMap 中访问缓存属性。 此外,某些设置在发布后无法修改,且在 Server Manager 中显示为只读。
- 打开 ArcGIS Server Manager,然后以 ArcGIS Server 管理员或服务所有者身份登录。 如需此步骤的帮助,请参阅登录 Manager。
- 单击服务,然后单击管理服务。
- 单击地图或影像服务的名称。
这会打开服务的属性。
- 在左侧面板中单击缓存。
- 设置缓存属性。
请注意,在初始化缓存后,切片原点和尺寸等属性都是只读的。
- 在完成缓存属性的修改后,单击保存并重新启动。
基本设置
打开缓存选项卡后,首先需要选择使用缓存中的切片选项以使用缓存中的切片绘制地图或影像服务。 如果选择使用根据数据动态绘制选项进行绘制,则服务器每次都会绘制地图,且地图或影像服务不会使用创建的任何缓存切片。
缓存目录
服务器缓存目录是磁盘上用于存储缓存切片的文件夹。 一个服务器缓存目录可存储多个缓存;但可将多个服务器缓存目录添加到服务器。 在创建 ArcGIS Server 站点时,会在您指定的位置为您创建服务器缓存目录。 有关详细信息,请参阅服务器目录。
注:
要编辑服务使用的缓存目录,请在更改缓存选项卡上的缓存目录之前停止该服务。
如果计划将其他 GIS 服务器计算机添加到您的站点,则需要在服务器缓存目录上启用文件共享,以便参与的所有计算机都可以看到它。 有关详细信息,请参阅在 Server Manager 中添加服务器目录和配置多机部署。 确保为 ArcGIS Server 帐户授予服务器缓存目录的写入权限,以使服务器可以成功地将切片放置在该目录中。 完成创建缓存后,可以移除写入权限。
可打开服务器缓存目录以检查缓存切片和切片方案文件 conf.xml。 另一个文件 conf.cdi 包含服务的默认范围信息,在 ArcMap 中以栅格数据集形式查看缓存时需要使用它。 名为 status.gdb 的地理数据库包含 ArcGIS 在其缓存状态报告中显示的信息。
切片以目录等级形式组织。 顶级目录和地图服务具有相同的名称,除非服务创建于 GIS 服务器文件夹。 如果地图服务在某个文件夹中,则顶级目录的名称为 <folder name>_<map service name>。
警告:
如果更改地图服务名称或地图数据框名称,则必须手动重命名缓存文件夹以保持匹配。
顶级目录包含要缓存的地图中特定数据框的子目录,该子目录包含单个子目录 _alllayers。 在该子目录中,存在各个细节层次的子目录。 这些细节级别子目录的结构取决于使用的是紧凑型存储格式还是松散型存储格式。
- 如果使用推荐的紧凑型缓存格式,则会在级别文件夹中直接看到包文件。 这些包文件包含切片。
- 如果使用松散型缓存格式,则会看到每个切片行的子目录,且最后会看到在行中表示特定列的实际图像文件。
缓存设置
这组选项可用于指定缓存的基本设置。
切片方案
切片方案用于定义切片边界的位置。 当您的缓存服务将覆盖客户端应用程序中的其他缓存时,与切片方案相匹配至关重要。
可以为缓存的切片方案选择预设选项或提供自定义文件。 可以使用切片方案设置组中的选项进一步修改切片方案以与您的缓存服务相匹配。
ArcGIS Online/Bing Maps/Google Maps
选择 ArcGIS Online/Bing 地图/Google 地图使您可以将来自这些在线地图服务的切片叠加在缓存切片之上。 ArcGIS 对源地图进行动态投影,投影至此切片方案需要的坐标系中,即 WGS 1984 Web Mercator (Auxiliary Sphere)。 如果要在创建切片时提高性能,请在发布服务前将数据和数据框投影到该坐标系。
如果要使用 ArcGIS Online、Bing Maps 或 Google Maps 中的地图覆盖缓存,则需要使用 ArcGIS Online/Bing Maps/Google Maps 切片方案。 ArcGIS Online 叠加实际上可在所有最新的 Esri 客户端应用程序中实现。 Bing Maps 叠加可在 Map Viewer 经典版 以及很多 ArcGIS Web 查看器和 API 中实现。 Google Maps 叠加可通过 Google Maps API 的 ArcGIS API for JavaScript 扩展名实现。
ArcGIS Online/Bing Maps/Google Maps 地图切片方案的优势在于它在 Web 地图领域内广为熟知,所以您的切片将与其他使用此切片方案的组织的切片相一致。 即使您不打算叠加这些广为熟知的地图服务,仍然可以选择此切片方案以便于互操作。
ArcGIS Online/Bing Maps/Google Maps 切片方案可能包含过度放大以至于无法在地图中使用的细节层次。 在大细节层次下进行缓存相当耗时,且会占用大量磁盘存储空间。 例如,切片方案中的最大细节层次约为 1:1,000。 在此比例下缓存整个美国大陆可能将耗费数周时间并需要数百 GB 的存储空间。 如果尚未准备好在此细节层次下进行缓存,则可在细节层次范围列表中将其删除(如下所述)。
警告:
相对于删除切片方案中的比例,选择不在该比例下创建切片效果更佳。 如果从 ArcGIS Online/Bing Maps/Google Maps 地图切片方案中删除比例,则可能无法叠加该服务的切片。
切片方案文件
如果无法使用 ArcGIS Online/Bing Maps/Google Maps 切片方案中的比例或坐标系,则可以创建您自己的切片方案。 使用服务器工具箱中的生成地图服务器缓存切片方案工具来生成 XML 切片方案文件。 本主题稍后将介绍此工具对话框需要您提供的多项设置。 您可以在创建缓存时浏览到切片方案文件,从而导入所有首选比例和设置。
现有的缓存地图和影像服务
如果想要匹配现有的缓存服务切片方案,请选择此选项。 系统将提示您浏览至该服务。
相匹配的切片方案可确保切片在 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 检查地图中的图层,并为您选择默认图像格式。 如果地图仅包含矢量图层,则默认图像格式为 PNG。 如果至少检测到一个栅格图层,则默认图像格式为 MIXED。
应检查此默认格式,并确定它是否可以达到您绘制地图的目的。 以下为可用图像格式及其相应用途的摘要:
- PNG - 对于每个切片,此格式确定将尽量降低切片存储空间而不降低显示效果的 PNG 位深度。 这适用于很多矢量地图,尤其是颜色种类较少的地图、单色条带较多的地图或者叠加网络。 如果不确定使用哪种 PNG 格式,请首先尝试此格式。
- PNG8 - PNG 8 用于需要具有透明背景的叠加服务,例如道路和边界。 PNG8 可在磁盘上创建非常小的切片且不损失任何信息。
当地图使用了抗锯齿功能时,采用 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 特别适用于对线或文本启用了抗锯齿的叠加服务。 PNG32 在磁盘上创建的切片比 PNG24 更大,但所有浏览器均为这些切片提供完全支持。
- 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 作为起点。
存储格式
可选择将切片分组以获取更高的存储效率和移动性,或者以单个文件形式存储每个切片。 以下为存储选项:
- 紧凑 - 在紧凑格式下,缓存中的每个文件都包含一包切片。 每个包的宽度为 128 个切片,高为 128 个切片,最多包含 16,384 个切片。 紧凑缓存的复制速度大大快于松散缓存,且所占用的磁盘空间更少。 了解有关紧凑型缓存的详细信息
- 松散 - 在松散格式下,每个切片都存储为磁盘上的一个文件。 这便于查看缓存中的切片;但这会使生成的缓存较大从而耗费更多的时间来创建,并且不易于复制。 因此,不再建议使用松散格式。
有时,缓存中数量巨大的文件和文件夹可能会使复制工具效率低下,包括在 Windows 中复制和粘贴。 因此,紧凑缓存可极大地减少缓存复制时间。 如果采用自动缓存更新工作流程,即在过渡服务器上创建切片后将其复制到生产服务器,建议使用紧凑缓存。 此外,如果可用磁盘空间有限,则应使用压缩缓存。
更改缓存目录
要更改缓存目录的位置,请停止 ArcGIS Server Manager 中的缓存服务,选择不同的缓存目录,然后重新启动该服务。
注:
在更改缓存目录之前,通过将现有缓存复制到新缓存目录位置,确保在新缓存目录位置存在现有缓存。 有关详细信息,请参阅复制缓存。
顶级缓存文件夹必须与缓存的地图或影像服务同名;否则,服务将使用数据进行动态渲染。 一个例外情况是,在 GIS 服务器中以文件夹的形式组织地图服务时,顶级目录语法为 <folder name>_<map service name>。
以管理员或发布者身份执行以下步骤:
- 在 ArcGIS Server Manager 中停止缓存的地图或影像服务。
有关说明,请参阅启动和停止服务。
- 转至服务 > 管理服务 > 缓存。
有关访问缓存属性的详细信息,请参阅上述部分在 ArcGIS Server Manager 中访问缓存设置。
- 单击缓存目录下拉菜单,然后选择包含缓存的注册文件或云存储。
- 重新启动服务。
切片方案
切片方案包括缓存的细节层次、切片尺寸和切片原点。 这些属性定义了缓存边界的存在位置,而且在某些客户端中叠加缓存时对于匹配操作十分重要。
从预设项或自定义规范中选择上述切片方案后,可以使用此组设置来进一步修改缓存服务的切片方案。
细节层次
切片方案通常包含许多用户可缩放的细节层次。 您可以修改缓存服务的细节层次列表。 根据您的地图,您可能希望放弃在切片方案中缓存过近或过远的比例,以节省磁盘空间和减少生成时间。 ArcGIS 将检查地图中的比例可变选项,并尝试提供进行缓存的细节层次范围的建议值。 您可以使用最低细节层次和最高细节层次参数调整此范围。
其余细节层次并不会从切片方案中移除,但您将无法创建它们的切片,除非您返回缓存选项卡,并将它们包括在范围内。
地图单位切片原点
切片方案原点是指切片方案格网的左上角。 原点不一定代表创建切片的起始坐标点;只有在达到地图全图范围或感兴趣区要素类时才是这样。 进行缓存时使用公用切片方案原点可确保它们能够在 Web 应用程序中相互叠加。
大多数情况下,应保持软件的默认切片方案原点。 默认原点为地图文档定义的坐标参考的左上点。 如果地图文档中未定义坐标参考,则将所有地图图层范围的并集加倍,然后使用所得范围的左上角作为原点。
如果将切片方案原点更改到非默认位置,则应注意只能在切片方案原点右下方的地图区域中创建切片。 如果仅需缓存地图的某个区域,与更改切片方案原点相比,基于要素类边界创建切片是更好的选择。
每英寸点数 (DPI)
每英寸点数 (DPI) 是指服务器生成的缓存切片的分辨率。 默认值 96 通常完全可满足需要,除非在您所工作的网络中,大多数客户端计算机都具有不同 DPI。 请注意,调整 DPI 会影响切片比例。
切片高度和切片宽度
切片的默认宽度和高度为 256 像素。 建议使用 256 或 512。 如果要构建的缓存与另一缓存相叠加,则应确保对两个缓存均使用相同的切片宽度和高度。
选择较小的切片宽度和高度可提高向缓存请求切片的应用程序的性能,因为需要传输的数据较少。 但对于松散缓存,切片越小,缓存越大且创建时间越长。
服务设置
缓存页面上的最后一组设置提供的选项可用于控制缓存服务的运行方式。
按需创建切片
如果选中此框,则当客户端首次请求之前未缓存区域的切片时,会将这些切片添加到缓存中。 这是确保人们在查看您的缓存时始终能看到地图的好方法,即使您没有时间来初始创建各个细节层次的所有切片。
允许客户端本地缓存切片
如果选中此框,则将允许 ArcGIS Enterprise Map Viewer 经典版 等 Esri 客户端应用程序保留从服务器检索的任何切片的本地缓存。 这可帮助客户端在返回到该区域时更加快速地查看切片。 客户端必须手动清除其缓存,才能从服务器获取任何更新的切片。 因此,如果要经常更新缓存,请考虑取消选中此框。
重采样
为了节省磁盘空间和生成缓存所花费的时间,您可能已选择不在缓存服务中包括特定细节层次的某些地图区域。 例如,如果您的服务提供了您所在国家/地区城市的相关信息,则您可能已排除在较低细节层次中缓存农村地区(进一步缩小)。 对于缓存切片稀疏或不可用的这些地图区域,以较低细节层次对现有缓存进行重采样的可选过程可为用户填补这些空白。
重采样(默认情况下处于禁用状态)会根据服务器上生成的最近细节层次,在尚未以该比例生成切片的地图区域中重新绘制缓存服务。 您可以通过选中重采样框对缓存服务启用此功能。
虽然重采样为用户提供了更加流畅的体验,但其输出可能会比较模糊,尤其是在要重采样的细节层次与源细节层次相距甚远的情况下。 例如,如果某个地图区域中所存在切片的缓存服务的最大比例为 1:5000,而用户在该区域中放大至 1:100,则重采样的缓存极有可能会失去清晰度和精度。 因此,建议重新采样时要谨慎使用。
如果要对缓存服务启用重采样,则可以指定服务执行重采样时的最低细节层次和最高细节层次。 设置这些参数时,请考虑缓存范围中包含的细节层次。
您可以随时返回 ArcGIS Server Manager 中的缓存页面以修改这些属性(创建后为只读的属性除外)。