创作地理处理服务涉及创作和共享过程。创作过程以在 ArcGIS Pro 中创建模型或 Python 脚本工具开始。创作并成功运行工具后,可以将其作为地理处理服务共享到 ArcGIS Server。必须在创作和共享时考虑某些数据、工具参数以及共享权限。一些注意事项在本主题的以下示例及相关部分中进行了描述。以下工作流介绍了整个过程:
- 使用工具箱中的工具构建脚本或模型以构造工作流。
- 收集您的工具所需的数据集,并使其在地理数据库中可用或将其添加至工程中的地图。
- 执行工具以在地理处理历史中创建一个成功条目。
- 如有必要,可在地图中设置输出数据集的符号系统。
- 将历史记录项目共享为地理处理服务。在共享地理处理服务时,您可以为工具和服务设置工具属性。
例如:检查拟建管线对人口的影响
以下模型工具是检查可能受管线泄露影响的人数的工具集合。工作流会查找管线与河流之间的相交点并执行下游追踪以识别可能受影响的人数。该模型设置有工程数据和参数并发布为地理处理服务,这样一来,分析人员或公众就可以更改拟建管线路径来了解泄露是如何影响下游人口的。地理处理服务结果显示了管线与河流的相交点以及受影响人口汇总。
工具设计
所有可用的工具都具有输入和输出参数。可以使用这些参数在每次运行该工具时提供不同的值,然后该工具会依次生成不同分析。除了输入和输出参数,该工具通常还有工程数据和中间数据。这些是运行工具的人员通常不能控制的数据集。在模型中,输入参数以 P 进行标记。当模型作为工具运行时,任何带 P 的输入都可以在工具对话框中使用以设置运行工具时要使用的值。从管线模型中,用户可以指定管线路径和缓冲距离来执行追踪下游。当有人使用该工具时,管线位置和缓冲区大小会改变以显示最终受管线影响的人数。本示例中的管线相交点和追踪线是模型工具在执行过程中生成的中间数据集。运行工具的人员不需要这些中间数据集,且这些数据集不会作为结果返回。当共享此模型时,强化地理处理服务的基础地理处理服务会处理写入中间数据的位置,并在不再需要时将其清空。
就像输入参数对于所有成功的工具来说都很重要一样,输出参数也同样重要。输出参数可以使工具将结果返回至运行工具的个人。在 ArcGIS Pro 中,输出参数非常重要,因为这些数据集会自动添加至地图。没有输出参数的工具会生成输出,但不会自动显示该信息。地理处理服务的工作方式大致相同;需要一个或多个输出参数来将结果返回给最终用户。在管线模型中,存在两个输出参数:显示下游缓冲区位置的影响区域人口以及带有全部受影响人口汇总的人口汇总表。请注意,impact areas population 既是中间数据又是输出数据。此参数之所以是中间数据,是因为汇总统计数据工具需要该参数,但它已被定义为模型参数 (P),且当工具成功完成运行后,它会将此结果返回给客户。
编写工具的文档说明
如果您希望尽可能多的人发现、了解和使用工具,至关重要的一点是为地理处理服务编写良好的文档。良好文档的编写从初始工具开始。可以将相同类型的元数据作为系统工具提供至模型或脚本工具。
运行此工具
创作该工具后,需成功运行该工具。运行工具时会在地理处理历史中创建一个条目。无法共享失败的工具执行。
注:
在 ModelBuilder 中运行模型时不会在地理处理历史中生成条目。模型工具必须作为工具在地理处理窗格中运行。
共享地理处理服务
地理处理服务只能通过具有管理员连接类型的 ArcGIS Server 连接共享到独立服务器。要使用正确的类型添加服务器连接,请按照以下步骤操作。
添加新的 ArcGIS Server 连接
有两种方法可以添加新建 ArcGIS Server 连接。
- 在 ArcGIS Pro 中的工程窗格下的目录选项卡上,右键单击窗格中的任意位置,选择新建 ArcGIS Server 连接以启动连接窗口,如下所示。
- 在 ArcGIS Pro 顶部的插入功能区选项卡中,选择连接功能区,并选择新建 ArcGIS Server 以启动连接窗口,如下所示。
输入服务器 URL和管理员登录凭据。完成后,将在工程窗格的服务器下添加一个扩展名为 .ags 的新服务器连接项目。
配置 ArcGIS Server 连接类型
在上一步中创建的初始连接使用发布者作为连接类型。要共享地理处理服务,需要管理员连接。要修改连接类型,请右键单击服务器连接项目并选择属性以启动 ArcGIS Server 连接属性窗口。将类型从发布者连接更改为管理员连接。
发布地理处理服务
如果服务器连接连接类型为管理员,请右键单击服务器连接并选择发布。使用地理处理服务选项启动所选历史项目窗口。从列表中选择项目以启动发布地理处理服务窗口。在发布服务之前,检查常规、配置和内容窗格中的属性是个不错的主意。
设置地理处理服务属性
泄露评估工具输出要素和表格。该工具生成和返回的数据量的大小有限制,因此,地理处理服务将被设置为不带结果地图服务的异步服务。1000 条最大记录数这一默认设置就足够了。错误的消息级别将确保仅返回与可能的工具失败相关的消息。在地理处理服务执行成功的情况下,正常的处理消息不会返回给最终用户。
复制或引用数据
所有地理处理服务都将数据作为输入或使用工程数据。当将泄露评估模型共享为地理处理服务时,它将会接受来自用户的数据,并针对模型中引用的工程数据对其进行处理。此时,在共享工具时,您必须决定是将数据复制到服务器并制作一份服务将用到的数据的静态副本,还是创建一个服务可以访问的参考。在这种特殊工作流中,工程数据包括静态的河流和人口数据集;也就是说,这些数据集不经常更新。在这种情况下,就有必要将数据复制到服务器。该过程将收集数据并将其转换(如有必要)为文件地理数据库要素类,然后在服务器上提取并由服务使用。
还应考虑分析方法是否在用户不拟建管线的地方被稍作修改了。另一种管线方案是通过其他过程完成且由用户提供不同的工具输入。在这种情况下,拟建的管线就成了工程数据。因此,建议将此数据集放入企业级地理数据库中并使工具对其引用。在发布时,您将使用 ArcGIS Server 数据存储来设置数据的引用。发布过程会维护对数据库的参考而非创建静态副本。稍后,分析人员可以在企业级地理数据库中更新数据,然后地理处理服务就可以针对最新管线方案执行分析。
分析
共享地理处理服务的分析 过程确保可成功将工具发布至门户。此外,可能会出现关于数据的警告消息,如有必要您可以采取措施。泄露评估工具已经具有了数据存储安装程序和工具文档,并使用在地理处理服务中可用的受支持工具,因此不会再出现这样的警告或消息了。
发布
设置了地理处理服务属性并解决了所有分析错误后,将地理处理服务发布至您的门户。根据需要合并及发送至服务器的数据量,此过程可能需要几分钟。
使用地理处理服务
地理处理服务可以在目录窗格中的 ArcGIS Server 连接中找到并打开。