Skip To Content

ArcGIS Server 的数据源

作为 ArcGIS Server 管理员或组织中的发布者,您可以注册 ArcGIS Server Web 服务的数据源,用于存储地图和图像缓存,也可用于 GeoAnalytics 和栅格分析输出存储。

通过将这些位置注册为数据存储,向 ArcGIS Server 提供一份访问位置列表以填充 web 服务数据。在多台计算机上发布时,数据注册还会帮助 ArcGIS Server 调整数据路径。此外,还可将这些数据存储中的一部分注册为栅格存储和大数据文件共享。

假设您是 ArcGIS Server 管理员,当前有一个部门的 GIS 分析人员将从多台客户端计算机上将服务发布到您的 ArcGIS Server 站点。利用 ArcMapArcGIS ProArcGIS Server Manager 中的工具,您可以将一组经认可的数据存储位置注册到 ArcGIS Server 站点,并将这些位置传达给分析人员。发布者还可以将经认可的文件夹、数据库(包括其中含有企业级或工作组级地理数据库的数据库)和云存储注册到站点。将这些数据存储注册到 ArcGIS Server 站点,可以减少分析人员因遇到权限问题而无法进行发布的事故数量。发布者可以创建引用已注册数据存储中的数据的服务。

还可以通过添加数据存储项目在您的 ArcGIS Enterprise 门户中为联合服务器注册数据存储位置。当您在门户中添加数据存储项目时,门户会将数据存储注册到您指定的 ArcGIS Server 站点。您可以在 ArcGIS Server Manager 中查看数据存储,且门户管理员可以从现有数据库和文件夹数据存储中创建项目。但是,您无法从 ArcGIS Server Manager 管理数据存储项目。数据存储项目必须在门户中管理

您可以注册的数据源

接下来 5 个章节将介绍发布者和 ArcGIS Server 管理员可注册到 ArcGIS Server 站点的数据存储。

如果数据位置发生改变,请添加更多的已注册数据位置。

数据库

通过引用数据库连接文件 (.sde),您可以注册 ArcGIS 支持的任何数据库管理系统。连接到的数据库可以包含地理数据库,但并非必须包含地理数据库。

如果使用经数据库验证的用户进行连接,则用户帐户信息必须随 .sde 文件一同保存,并且该用户必须拥有要发布数据的必要权限。例如,如果发布希望人们用于更新和添加要素的要素服务,则随已注册连接文件一同保存的用户必须拥有对数据库中的数据进行更新和创建的权限。

如果使用操作系统身份验证,则必须将 ArcGIS Server 帐户添加到数据库,并授予其访问数据所需的权限。

如果所注册的数据库包含传统版本化地理数据库,则 ArcGIS Server 可访问您为连接文件设置的地理数据库版本中存在的该数据版本。如果希望 ArcGIS Server 访问不同的版本,则必须注册单个连接文件,才能连接到这些地理数据库版本。例如,需要注册一个访问默认地理数据库版本的连接文件和一个访问子版本的连接文件。

如果所注册的数据库包含分支版本化地理数据库,则只能从默认版本发布;因此,请只注册一个访问默认版本的连接文件。

还可以通过引用 OLE DB 连接(.odc 文件)将数据库注册到 ArcGIS Server 站点。OLE DB 连接提供对多个数据库源中数据的统一访问,但是属于非空间连接。您只能在 ArcGIS Server ManagerArcMap 中注册这些文件。

ArcGIS Enterprise 门户数据存储项目支持的一组数据库不同于在 ArcGIS Server ManagerArcMapArcGIS Pro 中注册数据集时所支持的数据库

文件夹

可以将本地和共享操作系统文件夹注册到 ArcGIS Server 站点,该站点包含要发布的数据文件。这些文件夹可以包含 shapefile、文件地理数据库、定位器文件、影像(栅格)文件和大数据文件。

注册文件夹时,同样会注册其子文件夹。出于安全考虑,请勿将整个驱动器注册到 ArcGIS Server

大数据文件共享

大数据文件共享是共享的操作系统文件夹、Apache Hadoop Distributed File System (HDFS)Apache Hive,或者包含用作 GeoAnalytics Tools 输入的分隔文件或 shapefile 集合的云存储。

要将云存储用作大数据文件共享,必须先注册云存储。大数据文件共享支持 Amazon Simple Storage Service (S3) 存储段、Microsoft Azure Blob 存储容器和 Microsoft Azure Data Lake 存储。

有关注册大数据文件共享的信息,请参阅大数据文件共享入门

栅格存储

栅格存储是输出数据存储;其包含运行栅格分析工具时所创建的影像图层。栅格存储可以为文件共享或云存储。

要使用云存储作为栅格存储,必须先注册云存储。栅格存储支持 Amazon S3 存储段、Azure Blob 存储或 Alibaba Cloud Object Storage Service (OSS)

有关注册栅格存储的信息,请参阅 Portal for ArcGIS 管理员指南中的针对栅格分析配置并部署 ArcGIS Enterprise

云存储

可以将 Amazon Simple Storage Service (S3) 存储段、Azure Blob 存储容器或 Alibaba Cloud Object Storage Service (OSS) 注册为地图和影像服务缓存的云存储以及栅格存储。可以将 Amazon S3 存储段、Azure Blob 存储容器或 Microsoft Azure Data Lake 存储注册为云存储以供大数据文件共享使用。

其他几家云存储提供商表示可提供兼容 S3 的存储。

如果 ArcGIS Server 站点运行在相同的云平台上,则应仅使用地图和影像服务缓存的云存储。例如,如果 ArcGIS GIS ServerArcGIS Image Server 站点正运行在 Microsoft Azure 上,则应仅使用地图和影像服务缓存的 Azure Blob 存储。

您可以在 Microsoft Azure 中为一个或多个地理处理服务的作业目录使用云存储,即使您的 ArcGIS Server 的其他部分部署在本地或网络位置。有关说明,请参阅将地理处理服务的作业目录移动到 Microsoft Azure 存储

兼容 S3 的存储提供程序

为了支持兼容 S3 的存储提供程序,ArcGIS Server 具有一种机制可以将自定义区域添加到 Amazon Web Services (AWS) 区域内置列表中,如配置云存储区域中所述。为了将兼容 S3 的存储提供程序与 ArcGIS 结合使用,提供程序必须与适用于 Java 的 AWS SDK 相兼容。

此软件支持多个要素的 Amazon S3 存储,但并非所有要素均支持自定义兼容 S3 的存储。

  • 兼容 S3 的存储仅支持访问密钥和密钥身份验证;不支持 IAM 角色。
  • 您只能使用兼容 S3 的存储来处理缓存地图和影像服务中的地图请求。

在理解 Esri 不保证兼容 S3 的自定义存储会与 ArcGIS Server 相兼容,并且没有可用于解决兼容性问题的技术支持的情况下,可以使用兼容 S3 的存储提供程序。此外,Esri 不保证第三方的互操作性,但是会通过合理的方式确保其继续操作。

注册数据前

注册数据并不会授予 ArcGIS Server 站点对数据的访问权限。注册数据之前,需要确保对于存储在文件夹、工作组级地理数据库中的数据,或者使用操作系统身份验证访问的数据库或企业级地理数据库中的数据,ArcGIS Server 帐户至少具有读取权限。对于使用数据库身份验证用户访问的数据库或企业级地理数据库,必须授予该用户对数据的权限。要了解此过程的详细信息,请参阅使数据可供 ArcGIS Server 访问

如果要将企业级地理数据库或数据库(.sde.odc 文件)注册到 ArcGIS Server 站点,也需要确保站点中的每台 ArcGIS Server 计算机都安装了 64 位版本的数据库客户端软件。例如,如果要注册 Microsoft SQL Server 数据库,则必须在站点中的每台 ArcGIS Server 计算机上安装受支持的 SQL Server 客户端。请注意,安装客户端软件后,您需要重新启动 ArcGIS Server 服务。

以下链接描述了每个数据库所需的客户端软件、如何授权 ArcGIS Server 帐户数据访问权限以及如何连接到数据库:

无法将 IBM Informix 数据库或 z/OS 数据库上的 Db2 注册到 ArcGIS Server 站点。相反,可创建和发布服务定义文件(引用数据库中的数据)。

注册数据的情景

注册数据之前,请检查下列方案并考虑工作流之间如何进行关联:

A) 发布者的计算机与 ArcGIS Server 站点引用同一数据库

如果发布者的计算机与 ArcGIS Server 站点将引用相同数据库、工作组级地理数据库或企业级地理数据库中的数据,则注册数据时请导入发布者的数据库连接,然后将 ArcGIS Server 站点的数据库连接设置为与发布者连接相同

发布者的计算机与 ArcGIS Server 查看和访问位于同一数据库中的数据

何时使用此方案

如果希望避免在 ArcGIS Server 计算机上放置数据副本,请使用此方案。例如,假设您希望使用本地企业级地理数据库的数据从 ArcMapArcGIS Server 发布地图服务,或者从 ArcGIS Pro 向您的任一门户联合服务器发布地图图像图层。为避免将地图文档所引用的数据副本放置在其中一台 ArcGIS Server 计算机的文件夹中,请导入发布者的数据库连接并将 ArcGIS Server 站点的数据库连接设置为与发布者连接相同。发布后,地图文档将继续引用存储在企业级地理数据库中的数据。

何时不使用此方案

  • 如果数据位于文件地理数据库或文件目录中。应使用下一个方案。
  • 如果希望在企业级地理数据库中保留一份单独的数据副本以用于 Web 中。

B) 发布者的计算机与 ArcGIS Server 站点引用同一文件夹

如果发布者的计算机与 ArcGIS Server 站点将引用同一文件夹中的数据,则注册数据时请指定发布者的文件夹路径,然后将 ArcGIS Server 站点的文件夹路径设置为与发布者路径相同。除了使用文件夹而不是数据库,此方案与上一方案没什么不同。

发布者的计算机与 ArcGIS Server 查看和访问同一文件夹中的数据

何时使用此方案

如果希望避免在其中一台 ArcGIS Server 计算机上放置数据副本,请使用此方案。例如,假设您希望使用某一网络目录中的数据向 ArcGIS Server 发布地理处理服务。为避免将地理处理服务数据的副本复制到其中一台 ArcGIS Server 计算机上,请指定发布者的文件夹路径并将 ArcGIS Server 站点的文件夹路径设置为与发布者路径相同。发布后,地理处理服务将继续引用存储在网络目录中的地理处理模型、输入、输出、脚本和投影数据。

如果拥有管理所有数据的 Linux 上的 ArcGIS Server 站点,且已设置 Samba 以允许在 Microsoft WindowsLinux 之间共享文件,则此方案也非常有用。例如,如果希望发布引用 Linux 计算机上数据的地图文档,请将 Samba 目录 (\\net\data) 注册为发布者文件夹,并将 Linux 目录 (/net/data) 注册为 ArcGIS Server 站点的文件夹。发布后,地图文档会自动修改以引用 Linux 计算机中的目录。

何时不使用此方案

  • 如果数据位于某个数据库中。应使用上一个方案。
  • 如果要发布要素或 WFS-T 服务。

C) 发布者的计算机和 ArcGIS Server 站点引用不同的地理数据库,并且数据不是静态数据

由于防火墙的存在、计算平台之间的差异或者希望保留一份单独的数据副本以便在 Web 中使用,发布者与 ArcGIS Server 站点可能各自引用不同地理数据库中的相同数据。要使用此方案注册您的数据,需要同时导入与发布者数据库的连接以及与 ArcGIS Server 站点的地理数据库的连接。

发布者的计算机与 ArcGIS Server 使用单独的地理数据库

何时使用此方案

如果希望在本地企业级地理数据库中保留一份单独的数据副本以便在 Web 中使用,请使用此方案。这种情况下,您有责任确保 ArcGIS Server 站点的地理数据库中存在一份发布者地理数据库的数据副本。此方案仅适用于企业级地理数据库,而不适用于数据库。

要允许用户复制数据,以使发布者和 ArcGIS Server 站点具有更改数据的访问权限,则在 ArcMap 中注册您的企业级地理数据库时,请选中为服务器数据库创建地理数据服务。选中此选项会自动创建地理数据服务,您可以通过此服务将发布者地理数据库的数据复本手动发送到 ArcGIS Server 站点的地理数据库。

您也可以使用地理数据服务同步企业级地理数据库,由此确保对发布者数据库所做的任何后续更改都反映在 ArcGIS Server 站点的地理数据库中。这对于云部署尤其有利,因为不需要有人登录到云计算机并安排数据传输。

此方案也非常适合将要素服务发布到本地或云 ArcGIS Server 站点。例如,如果使用此方案发布要素服务,会将本地执行的编辑推送到 ArcGIS Server 站点的地理数据库,从而使其对要素服务的最终用户可用。相反,如果 Web 编辑者更改了 ArcGIS Server 站点的地理数据库中的任何要素,所进行的编辑会与发布者地理数据库同步。

何时不使用此方案

  • 如果数据位于文件地理数据库或文件目录中。应使用方案 D
  • 如果数据位于某个数据库中(不包含地理数据库的数据库)。应使用方案 A
  • 如果不希望在服务器中保留一份单独的地理数据库的副本。
  • 如果从 ArcGIS Pro 发布到您的任一门户联合服务器。
  • 发布的数据是静态数据。在这种情况下,无需将发布者地理数据库中的更改同步到 ArcGIS Server 站点的地理数据库。在这种情况下,可以使用托管数据库方案而不进行复制。

D) 发布者的计算机与 ArcGIS Server 站点引用不同的文件夹

由于防火墙的存在、计算平台之间的差异或者保留一份单独的数据副本以便在 Web 中使用,发布者与服务器可能各自在他们自己的数据文件夹中引用相同数据的副本。要使用此方案注册您的数据,需要输入到发布者文件夹以及服务器文件夹的路径。

发布者的计算机与 ArcGIS Server 使用各自不同的数据目录

何时使用此方案

此方案适用于 Linux 部署、云部署或者任何希望发布者与 web 用户使用单独数据副本的部署。

例如,如果希望从 ArcMap 发布地图服务到 Linux 上的 ArcGIS Server 站点, 可以创建一份地图文档数据的相同副本,并将数据放置在 ArcGIS Server 计算机上。将两个目录都注册到 ArcGIS Server 站点并发布后,地图文档会自动修改,以引用在 ArcGIS Server 计算机上的文件夹。

如果要发布到在云端运行的 ArcGIS Server 站点,此方案同样有用。例如,您可以复制本地数据并将其放置于云中虚拟机上的任意目录。发布后,数据路径会自动修改以引用云服务器中的目录。这种方法的缺点是,需要用户登录到云计算机并为向云进行数据传输做好安排(这可以通过 FTP、远程桌面复制和粘贴或者其他受支持的数据传输方法来执行)。

何时不使用此方案

  • 如果数据位于某个企业级地理数据库中,应使用方案 C
  • 如果数据位于某个数据库中,应使用方案 A
  • 如果不希望在服务器中保留一份单独的数据副本。
  • 如果从 ArcGIS Pro 发布到您的任一门户联合服务器。

E) 发布者的计算机与 ArcGIS Server 站点引用不同的地理数据库

此方案类似于方案 C,但在此方案中,不会对两个地理数据库之间的数据进行同步。如果要将本地企业级地理数据库中的要素数据移动到云端中的企业级地理数据库,则此方法非常有用。

发布要素服务时复制到云端的要素数据

何时使用此方案

可以使用此方案将要素数据移动到云端。此方案需要满足以下条件:

  • 本地数据源和云端中的数据存储必须为企业级地理数据库。
  • 必须将云端中的企业级地理数据库注册为独立或联合 ArcGIS Server 站点的托管数据库。
  • 发布者必须使用 ArcMap 将要素服务发布到云端中的独立或联合 ArcGIS Server 站点。

何时不使用此方案

  • 如果数据位于文件地理数据库或文件目录中。
  • 如果数据位于某个数据库中(不包含地理数据库的数据库)。
  • 如果要对发布者与 ArcGIS Server 站点的地理数据库之间的数据更改进行同步,请使用方案 C

F) 发布者的计算机引用本地地图或影像数据,而 ArcGIS Server 站点引用云存储位置

如果您的 ArcGIS GIS Server 站点或 ArcGIS Image Server 站点正运行在云端中,并且您还希望将地图或影像服务缓存存储在云端,则发布之前,请为您的云提供商提供连接和身份验证信息。发布缓存的地图或影像服务时,缓存将驻留在注册的云存储中。

通过云容器中存储的缓存发布地图或影像服务

何时使用此方案

如果您的 ArcGIS Server 站点运行在 AWSMicrosoft Azure 或 Alibaba 上,并且您希望地图或影像服务分别引用存储在 Amazon S3 存储段、Azure Blob 存储容器或 Alibaba 存储段中的缓存,请使用此方案。

何时不使用此方案

  • 您的 ArcGIS Server 站点未运行在云端。

如何将您的数据注册到 ArcGIS Server

可以使用 ArcGIS Server ManagerArcMapArcGIS Pro 将数据文件夹、数据库和云位置注册到 ArcGIS Server。如果您的 ArcGIS Server 站点与门户联合,则您可以添加数据存储项目,用于发布要素和影像图层。

有关详细信息,请参阅以下内容:

取消注册数据存储时的注意事项

如果现有服务包含数据存储中的数据,则不应取消注册数据存储。

如果从 ArcGIS Server 站点中取消注册某个数据存储,并且该数据存储用于填充现有服务,那么您仍然可以查看服务,具体取决于所使用的数据存储类型。取消注册数据存储时,请注意以下限制:

  • 对于在 ArcGIS Server ManagerArcGIS ProArcMap 中注册的数据库,您仍然可以查看其所填充的服务中的数据。但是,如果更改了使用数据存储进行存储的密码,将无法更新服务以使用新密码。此时,服务将不再运行,您需要注册包含服务数据的数据库并重新发布服务。
  • 对于注册数据库和托管数据库,如果源数据存储不再注册到 ArcGIS Server 站点,那么任何添加到集群的新 ArcGIS Server 计算机都将无法识别服务。您需要注册包含服务数据的数据库并重新发布服务,以便新计算机能够识别服务。
  • 如果您在 ArcGIS Enterprise 门户中添加了数据存储项目,请不要使用 ArcGIS Server ManagerArcGIS ProArcMap 取消注册。您必须从数据存储项目中移除联合服务器
  • 尽管可以在 ArcGIS Server Manager 中取消注册托管服务器站点中的 ArcGIS Data Store 关系数据存储、切片缓存数据存储以及时空大数据存储,但是请勿执行此操作。如果从 Server Manager 取消注册这些数据存储,则其所填充的服务将不再运行。

    如果您或组织内的发布者不小心在 ArcGIS Server Manager 中取消注册了 ArcGIS Data Store(或者在 ArcMap 中取消注册了关系数据存储),那么您必须将 ArcGIS Data Store 重新配置到同一个 ArcGIS Server 站点,以便使您的服务再次运行。