如何组织数据和向服务器注册数据将影响数据发布时是否需要打包并复制到服务器。
阅读本主题之前,了解有关 ArcGIS Server 如何存储和访问数据的基础知识非常重要。有关详细信息,请参阅以下链接内容:
正如您所知道的,栅格数据集和镶嵌数据集可组成许多不同的文件。本主题将帮助指导您组织此数据以便在发布时获取所需的结果。
重要的一点是了解数据路径是否已注册到数据存储中,ArcGIS Server 假设所有数据均已位于该位置。这通常在注册位置与服务器共享时不会构成问题,但在位置重复时可导致问题。在这种情况下,您想要确保未对一个位置进行任何更改而不是另一个位置。例如,如果您对本地位置上的栅格数据集构建了金字塔,但未将这些内容复制到服务器上的重复位置,则这些内容不会在发布操作期间进行复制,因为服务器假设所有数据文件都是重复的。由于涉及更多的文件,因此镶嵌数据集的情况略为复杂。
一个复杂的问题是镶嵌数据集源数据的位置。为简单起见,我们假设源数据是栅格数据集的集合 - 包括金字塔、统计数据和元数据文件。所有这些数据均可位于镶嵌数据集有读取访问权限的位置。
接下来是镶嵌数据集。为了清晰起见,我们假设该数据集存储在文件地理数据库中。如果您构建的是概视图,这些内容将存储在地理数据库旁边的文件夹中。此文件夹的名称与地理数据库的名称相同,扩展名为 .Overviews。如果您添加了一个激光雷达数据,或生成栅格项目的缓存,则将有另一个文件夹存储在地理数据库旁边,具有相同的地理数据库名称和 .Cache 扩展名。默认情况下,概视图和缓存存储位置都存储在地理数据库旁边,但您可以选择在其他位置存储 - 仅仅是增加数据组织的复杂程度。
发布时,您需要确保服务器有通过镶嵌数据集管理的所有内容的访问权限;因此必须正确设置数据源和准备镶嵌数据集。下面的每一情景都将展开此问题,尤其是使用镶嵌数据集时,因为镶嵌数据集所引用数据可位于任何位置(只要能够读取)。
情景 1:所有数据均位于共享位置
这可能是最佳的数据组织结构。在此情景中,所有内容都存储在对您和服务器共享的位置。您需要向服务器注册此位置,然后在目录窗口中(或 ArcCatalog)连接到此位置以将来自该位置的数据共享为影像服务。这也是最快的发布方式,因为没有数据移动。
情景 2:所有数据都是重复的
在此情景中,您的数据存储在两个位置:一个位置通过服务器访问,另一个位置在目录 窗口中连接。此设置通常在服务器位于云中或 Linux 操作系统上时使用。
您必须确保数据完全相同。例如,如果您通过添加新影像或修改轮廓线来修改镶嵌数据集,则必须确保复制服务器访问权限已更新。您还必须确保指向数据的路径已相应进行修改。镶嵌数据集包含指向所有其内容的硬编码路径。因此,如果内容的位置为 D:\MyData 而服务器上的数据为 \\Blue\ServerData,您需要确保镶嵌数据集中的路径在 \\Blue\ServerData 位置已更新。您可以在镶嵌数据集(和关联文件)在服务器位置上重复之前或之后更新这些路径;请参阅修复镶嵌数据集中的路径。
发布之前,请确保已将本地和服务器位置注册为重复位置,并确保数据已复制且路径正确无误。然后,您可以通过指向本地计算机上的该位置发布镶嵌数据集。服务器将了解该位置已复制并且因此不会移动任何数据。与情景 1 一样,这也会使发布更快。
情景 3:没有注册的数据位置
与情景 1 一样,此情景也不复杂,因为您不必担心任何数据的位置以及服务器是否能访问数据或数据的正确版本。在此情景中,所有数据发布时均已打包并移动到服务器。这对于小型数据集合来说非常不错,但不建议用于大中型集合,因为打包和移动数据可能会花很长时间。如果您没有服务器所使用位置的任何访问权限,或者您正在发布小型栅格数据集,但移动千兆字节或更多的数据时此方式效率不高,则可能会选择此选项。
情景 4:只有源数据位于注册位置
在此情景中,源数据位置与镶嵌数据集位置不同。此源数据位置可以是共享的或重复的。
示例 1:共享源数据
源数据位置在 \\yellow\RasterData 上共享。在本地计算机上,您可创建一个镶嵌数据集并从 \\yellow\RasterData 添加数据。然后,当您发布镶嵌数据集时,该过程将包括打包镶嵌数据集和关联文件(例如 *.Overviews 文件夹的内容)、将其移动到服务器和更新硬编码的文件路径位置(或确保其相关位置保持不变)。如果存在大量的概视图,这可能需要花费很长时间。
示例 2:重复源数据
源数据是重复的 - 在服务器上,该数据位于 P:\SourceData\RasterData,在您的本地计算机上,该数据位于 D:\RasterData。
在本例中,您必须确保没有在 D:\RasterData 内创建镶嵌数据集,因为服务器假设这两个位置是重复的,将不会检查 P:\SourcData\RasterData 来查看发布时镶嵌数据集是否位于该位置。
在唯一的位置(例如 D:\Collections)创建您的镶嵌数据集。然后,当您发布镶嵌数据集时,该过程将包括打包镶嵌数据集和关联文件(例如 *.Overviews 文件夹的内容)、将其移动到服务器和更新硬编码的文件路径位置(或确保其相关位置保持不变)。