Skip To Content

在门户中批量地理编码的最佳做法

要求

如果您具有 ArcGIS Enterprise 部署,则可以利用服务器端异步批量理编码模式,该模式将帮助您在定位器服务中获得最佳性能。此方法使用您已在门户上发布的定位器。有关创建定位器并将其共享至门户的详细信息,请参阅创建定位器将定位器共享至门户

优点

您可以借助 ArcGIS Enterprise 的强大功能充分利用已发布的地理编码服务。将定位器共享到门户后,可以将其用于批量地理编码。使用门户进行批量地理编码的部分优势如下:

  • 最大化服务器资源以尽快完成批量地理编码作业。
  • 允许 ArcGIS 管理员管理后端资源,而不是使服务超载。
  • 使用您的数据和您自己的已发布定位器在组织的防火墙之后执行大批量地理编码。
  • 内置分段和重试逻辑以确保大批量地理编码作业不会失败。

架构

要最大化利用已发布的定位器服务,可以扩展地理编码服务器的实例数。您可以在 ArcGIS Server Manager 中执行此操作。

添加 numBatchThreads

在上图中,ArcGIS 管理员已将定位器服务扩展为四个实例。然后,组织的 ArcGIS 管理员可以将定位器的批量地理编码线程数设置为 4,从而使批量地理编码的性能提高四倍。管理员可以在门户的主页上设置批量地理编码线程数属性,方法为:转至组织选项卡,单击设置 > 实用程序服务,然后向下滚动至地理编码。如果存在 4 个可用的地理编码实例,且两位用户希望同时执行批量地理编码,则 ArcGIS 管理员应将批量地理编码线程数属性设置为 2,否则作业将排队进行并可能会在等待另一个作业完成时超时。这样设置后,每个批量地理编码作业将针对两个可用的定位器实例运行,而后端定位器服务将能够处理同时提交多个作业的负载。

硬件建议

要使您的地理编码服务获得最佳性能,针对将托管地理编码服务的服务器计算机,提供以下建议:

  • 计算机应为物理计算机(而非虚拟机)。
  • 计算机应通过以太网(而非 Wi-Fi)连接到网络。
  • 计算机应在 SSD 硬盘上安装 ArcGIS Server。
  • 对于多机站点,请将定位器发布到每台计算机,而非使用网络共享。

配置

将定位器共享到 ArcGIS Enterprise 后,以下步骤介绍了 ArcGIS 管理员可以如何配置其门户以利用上述异步批量地理编码模式。

批量地理编码时添加日志记录以获得更多反馈

注:

ArcGIS Enterprise 10.8.1 开始,用户不应更改消息级别。为了获得最佳性能,请将消息级别保持为默认值(警告)。

默认情况下,将 GeocodingTools 地理处理服务消息级别设置为警告。若要了解更详细的错误消息,以及更好地更新批量地理编码作业的状态(如完成百分比),可将 GeocodingTools 地理处理服务的日志记录级别设置为信息

注:

将日志级别更改为信息可能导致性能严重下降,尤其在多机 ArcGIS Server 站点中更是如此。要获得最佳性能,请将日志级别设置为警告

  1. 浏览至您的托管服务器的 ArcGIS Server Manager。
  2. 单击 Server Manager 目录中的实用程序文件夹。
  3. 单击 GeocodingTools 地理处理服务。
  4. 单击左侧的参数通栏,将消息级别更改为信息
  5. 单击右上角的保存并重新启动按钮。

将日志记录级别更改为信息将提供更好的作业进度反馈和更多可能出现的错误的相关信息。这些优势在 ArcGIS Pro地理编码表对表格中的位置进行地理编码地理编码文件工具中均有所显现。

增加批量地理编码超时

默认情况下,GeocodingTools 地理处理服务作业的超时超过 200 分钟。如果您预计批量地理编码作业可能需要 3 小时 20 分钟以上才能完成,您将需要增加客户端可以使用该服务的最长时间。

  1. 浏览至您的托管服务器的 ArcGIS Server Manager。
  2. 单击 Server Manager 目录中的实用程序文件夹。
  3. 单击 GeocodingTools 地理处理服务。
  4. 单击左侧的池化通栏并更改客户端可以使用该服务的最长时间。将此值增加到一个非常大的数字,可确保大批量地理编码作业永远不会超时。
  5. 单击右上角的保存并重新启动按钮。

扩展地理编码服务

根据 ArcGIS Server 计算机的内核数,您将需要扩展您的地理编码服务部署。如果您的 ArcGIS Server 计算机具有 8 个物理内核,并且您计划仅将计算机用于批量地理编码,则可以将每台计算机的最小实例数每台计算机的最大实例数参数设置为 8,从而使您的批量地理编码处理速度提高 8 倍。但是,如果托管地理编码服务的 ArcGIS Server 计算机为虚拟机 (VM),则建议您扩展为计算机上虚拟内核数的一半。例如,如果您的 VM 具有 8 个虚拟内核,则建议您将地理编码服务扩展为 4 个实例。

  1. 浏览至您的托管服务器的 ArcGIS Server Manager。
  2. 如果您在 Server Manager 目录的文件夹中发布了地理编码服务,请单击该文件夹名称。默认设置为发布到站点(根)。
  3. 单击要扩展的地理编码服务。
  4. 单击左侧池化通栏,然后将每台计算机的最小实例数每台计算机的最大实例数参数更改为相同的所需实例数。对于地理编码服务,这两个值应始终保持相同,以确保可用于地理编码的实例数始终正确。
  5. 单击右上角的保存并重新启动按钮。

为您的定位器配置建议数目的批量地理编码线程

运行在联合 GIS Server 站点的 GeocodingTools 地理处理服务也可使用任何发布到门户的定位器。地理处理服务可向地理编码实用程序服务发送多个并发请求,从而加快批量地理编码的整体执行速度。地理处理服务发出的并发请求数目(批量地理编码线程数)可由门户管理员配置。必须将批量地理编码线程数设置为正确的值;否则,将导致批量地理编码故障增加。

最佳做法是,应将批量地理编码线程数设置为与可用于地理编码服务的实例数成正比。例如,如果可用于地理编码服务的实例数为 8,且 ArcGIS Server 计算机仅用于批量地理编码,则应将批量地理编码线程数设置为 8。执行地理处理服务后,会向定位器服务发送 8 个并发批量地理编码请求。如果有更多实例可供定位器服务使用,则应相应调整批量地理编码线程数目,以充分利用可供定位器服务使用的实例。但是,如果两位用户希望针对同一服务同时执行批量地理编码,则管理员应将批量地理编码线程数设置为 4,由此每位用户可以使用一半的可用地理编码服务实例,并且后端地理编码服务也不会被请求所淹没。

请注意,Esri World Batch Geocoder 无法配置批量地理编码线程。以下配置适用于配置为实用程序服务的其他所有已发布定位器服务。

要为您的定位器服务设置建议数目的批量地理编码线程,请执行以下步骤:

  1. 使用 ArcGIS Pro 将所需地理编码服务发布到门户。
  2. 以管理员身份登录到门户。
  3. 单击内容,并确保与组织共享地理编码服务。
  4. 单击组织,然后浏览至设置下的实用程序服务
  5. 向下滚动到地理编码部分,然后单击添加定位器。选择要配置用于批量地理编码的定位器,然后调整批量地理编码线程数值。
  6. 单击确定并单击页面底部的保存
注:

批量地理编码线程数必须小于或等于可用于地理编码服务的实例数。如果选择较大的值,则批量地理编码作业可能会失败。

批量地理编码线程数

为批量地理编码启用的工具

ArcGIS 管理员配置了每个定位器的批量地理编码线程数之后,用户即可在其批量地理编码作业中利用提升的性能。利用这种性能提升的工具包括 ArcGIS Pro 中的地理编码表对表格中的位置进行地理编码地理编码文件,以及 Map Viewer 中的对表格中的位置进行地理编码