构建镶嵌数据集项目缓存 (数据管理)

摘要

插入“缓存栅格”函数,作为镶嵌数据集中所有函数链的最后一步。

使用情况

  • “缓存栅格”函数插入到每个函数链的顶部,这样该函数就成为链中最后实现的函数。

  • 如果生成缓存时未检查生成缓存参数(在 Python 中将 generate_cache 设置为 GENERATE_CACHE),则可利用 同步镶嵌数据集工具生成缓存。

  • 缓存共享(发布)到服务器后,将不随镶嵌数据集移动。如果要构建镶嵌数据集的缓存,即要作为影像服务发布的缓存,则将缓存共享后,可以在镶嵌数据集上运行该工具。同时还要确保服务器可访问缓存路径。如果在发布镶嵌数据集前构建缓存,则可将缓存移动到服务器上,并更新存储在镶嵌数据集中的缓存路径。

参数

标注说明数据类型
镶嵌数据集

希望应用缓存函数的镶嵌数据集。

Mosaic Layer
查询定义
(可选)

在您希望构建项目缓存的镶嵌数据集中,用来选择特定栅格数据集的 SQL 表达式。

SQL Expression
定义缓存
(可选)

启用缓存属性的编辑功能。

  • 选中 - 将“缓存栅格”函数添加到选定项目。如果项目已经具有该函数,将不再添加。这是默认设置。
  • 未选中 - 不定义栅格缓存。
Boolean
生成缓存
(可选)

根据“缓存栅格”函数中定义的属性(例如,缓存的位置和压缩)选择生成缓存文件。

  • 选中 - 将生成缓存。这是默认设置。
  • 未选中 - 不生成缓存。
Boolean
缓存路径
(可选)

选择覆盖保存缓存的默认位置。如果镶嵌数据集位于文件地理数据库中,则默认将缓存保存在与地理数据库名称相同的文件夹中,并使用 .cache 作为扩展名。如果镶嵌数据集位于企业级地理数据库中,则默认将缓存保存在该地理数据库中。创建后,缓存将始终保存到同一位置。要将缓存保存到其他位置,需要首先使用修复镶嵌数据集工具指定新位置,然后再次运行该工具。

项目缓存创建完成后,无法通过指定不同的缓存路径并重新运行该工具来在其他位置处重新生成项目缓存。只能继续在首次生成项目缓存的位置上生成。不过,可删除此函数,然后在新路径中插入一个新函数;或者使用修复镶嵌数据集工具修改缓存路径,然后运行此工具,在其它位置上生成项目缓存。

Workspace
压缩方法
(可选)

选择数据压缩方式以便加快传输。

  • LOSSLESS 生成缓存时保留每个像素的值。无损压缩的压缩比接近 2:1。
  • LOSSY 适用于仅将影像用作背景时。有损压缩的压缩比最高 (20:1),但对相似的像素值进行分组可实现更高的压缩比。
  • NONE 不压缩影像。这样会降低影像的传输速度,但同时会加快绘制,因为不需要在查看时进行解压缩。
String
压缩质量
(可选)

设置使用有损压缩方式时的压缩质量。压缩质量值介于 1% 到 100% 之间,其中 100% 的压缩程度最低。

Long
允许的最大行数
(可选)

利用行数限制缓存数据集的大小。如果值大于数据集中的行数,缓存将不会生成。

Long
允许的最大列数
(可选)

利用列数限制缓存数据集的大小。如果值大于数据集中的列数,缓存将不会生成。

Long
请求大小类型
(可选)

使用以下两种方法之一对缓存进行重采样:

  • PIXEL_SIZE_FACTOR 设置与像素大小相关的比例因子。如果不想对缓存进行重采样,请选择像素大小因子并将请求大小参数设置为 1
  • PIXEL_SIZE 为缓存栅格指定像素大小。
String
请求大小
(可选)

设置一个应用于请求大小类型的值。

Double

派生输出

标注说明数据类型
更新的镶嵌数据集

已更新的镶嵌数据集。

镶嵌图层

arcpy.management.BuildMosaicDatasetItemCache(in_mosaic_dataset, {where_clause}, {define_cache}, {generate_cache}, {item_cache_folder}, {compression_method}, {compression_quality}, {max_allowed_rows}, {max_allowed_columns}, {request_size_type}, {request_size})
名称说明数据类型
in_mosaic_dataset

希望应用缓存函数的镶嵌数据集。

Mosaic Layer
where_clause
(可选)

在您希望构建项目缓存的镶嵌数据集中,用来选择特定栅格数据集的 SQL 表达式。

SQL Expression
define_cache
(可选)

选择定义镶嵌数据集缓存。“缓存栅格”函数将插入到选定项目中。如果项目已经具有“缓存栅格”函数,将不再添加。

  • DEFINE_CACHE“缓存栅格”函数将添加到选定项目中。如果项目已经具有该函数,将不再添加。这是默认设置。
  • NO_DEFINE_CACHE不定义栅格缓存。
Boolean
generate_cache
(可选)

根据“缓存栅格”函数中定义的属性(例如,缓存的位置和压缩)选择生成缓存文件。

  • GENERATE_CACHE将生成缓存。这是默认设置。
  • NO_GENERATE_CACHE不生成缓存。
Boolean
item_cache_folder
(可选)

选择覆盖保存缓存的默认位置。如果镶嵌数据集位于文件地理数据库中,则默认将缓存保存在与地理数据库名称相同的文件夹中,并使用 .cache 作为扩展名。如果镶嵌数据集位于企业级地理数据库中,则默认将缓存保存在该地理数据库中。创建后,缓存将始终保存到同一位置。要将缓存保存到其他位置,需要首先使用修复镶嵌数据集工具指定新位置,然后再次运行该工具。

项目缓存创建完成后,无法通过指定不同的缓存路径并重新运行该工具来在其他位置处重新生成项目缓存。只能继续在首次生成项目缓存的位置上生成。不过,可删除此函数,然后在新路径中插入一个新函数;或者使用修复镶嵌数据集工具修改缓存路径,然后运行此工具,在其它位置上生成项目缓存。

Workspace
compression_method
(可选)

选择数据压缩方式以便加快传输。

  • LOSSLESS 生成缓存时保留每个像素的值。无损压缩的压缩比接近 2:1。
  • LOSSY 适用于仅将影像用作背景时。有损压缩的压缩比最高 (20:1),但对相似的像素值进行分组可实现更高的压缩比。
  • NONE 不压缩影像。这样会降低影像的传输速度,但同时会加快绘制,因为不需要在查看时进行解压缩。
String
compression_quality
(可选)

设置使用有损压缩方式时的压缩质量。压缩质量值介于 1% 到 100% 之间,其中 100% 的压缩程度最低。

Long
max_allowed_rows
(可选)

利用行数限制缓存数据集的大小。如果值大于数据集中的行数,缓存将不会生成。

Long
max_allowed_columns
(可选)

利用列数限制缓存数据集的大小。如果值大于数据集中的列数,缓存将不会生成。

Long
request_size_type
(可选)

使用以下两种方法之一对缓存进行重采样:

  • PIXEL_SIZE_FACTOR 设置与像素大小相关的比例因子。如果不想对缓存进行重采样,请选择 PIXEL_SIZE_FACTOR 并将 request_size 参数设置为 1
  • PIXEL_SIZE 为缓存栅格指定像素大小。
String
request_size
(可选)

设置一个应用于 request_size_type 的值。

Double

派生输出

名称说明数据类型
out_mosaic_dataset

已更新的镶嵌数据集。

镶嵌图层

代码示例

BuildMosaicDatasetItemCache 示例 1(Python 窗口)

这是 BuildMosaicDatasetItemCache 的 Python 示例。

import arcpy
arcpy.BuildMosaicDatasetItemCache_management(
     "C:/Workspace/itemcache.gdb/md",  "#", "DEFINE_CACHE", 
     "NO_GENERATE_CACHE", "C:/workspace/itemcache", "LOSSY", 
     "80", "#", "#")
BuildMosaicDatasetItemCache 示例 2(独立窗口)

这是 BuildMosaicDatasetItemCache 的 Python 脚本示例。

#Define mosaic dataset item cache without generating the cache file

import arcpy
arcpy.env.workspace = "C:/Workspace"

mdname = "itemcache.gdb/md"
query = "#"
definecache = "DEFINE_CACHE"
generatecache = "NO_GENERATE_CACHE"
cachepath = "C:/workspace/itemcache"
compression = "LOSSY"
compquality = "80"
maxrow = "#"
maxcolumn = "#"

arcpy.BuildMosaicDatasetItemCache_management(
     mdname, query, definecache, generatecache, cachepath, compression, 
     compquality, maxrow, maxcolumn)