搜索服务
搜索服务可在本地网络上为您提供 GIS 内容的可搜索索引。搜索服务在进行大型的企业级部署(GIS 数据分布在多个数据库及文件共享中)时用处最大。GIS 分析人员可输入搜索服务的 URL,然后输入一些搜索词来查找数据,而不必从头至尾浏览这些数据源。ArcMap 为用户提供了一个搜索接口,可帮助用户以这种方式搜索数据并将结果数据集拖放到地图中。
搜索服务的工作原理
搜索服务依赖于通过服务器构建及维护的 GIS 内容索引。发出搜索请求时,搜索服务会搜索匹配索引,并返回搜索结果。
最初构建索引需要花费一些时间。构建索引后,会定期添加新的索引项(默认情况下每小时一次)。要检测删除项或对现有项的编辑,必须从头开始重新构建索引。默认情况下每天一次。
索引由配套的地理处理服务进行维护,该服务在您创建搜索服务时创建。地理处理服务具有与您的搜索服务相同的名称,具有 _indexer 后缀。
索引存储在服务器索引目录下。如果仅在一台计算机上安装 ArcGIS Server,默认情况下会将索引目录创建在 C:\arcgisserver\arcgisindex。您可以在其他位置配置服务器索引目录;实际上,如果在多台计算机上安装 ArcGIS Server,则需要在您部署的所有计算机均可访问的共享位置配置服务器索引目录。
搜索服务只能拥有一个服务器索引目录。
如何准备用于搜索服务的数据
您可以通过在网络上共享数据并提供适当的数据项相关信息来准备出可供搜索服务使用的数据。
在网络上共享数据
创建搜索服务前,必须在网络上共享要建立索引的所有文件夹,并确保 SOC 帐户对数据具有读取权限。此外,可能通过搜索结果添加数据的任何用户都必须对数据具有访问权限。
通过将 SDE 连接文件放置在网络上的共享位置,索引中便可包括 ArcSDE 数据库。
提供适当的数据项相关信息
ArcGIS Desktop 允许您输入有关数据项的信息,例如摘要、制作者名单和标签。这正是数据项卡上添加到索引的基本信息。该项的完整元数据不会添加到索引。
如何创建搜索服务
您可以使用 ArcCatalog 或 ArcMap 的目录 窗口中的添加新服务向导创建搜索服务。
除了所有服务类型都需要的通用参数(例如实例数和超时值)外,您还需要提供以下参数:
- 搜索索引的位置。这是您的服务器索引目录之一。
- 为新项建立索引的频率。
- 从头开始重新构建索引的频率。
- 索引中所应包含的文件夹和服务器连接。
您不能使用发布 GIS 资源 向导创建搜索服务。
搜索服务安全性
搜索服务仅可用于内部网络。对于向 Internet 提供某些服务的 ArcGIS Server 实例,可考虑创建专供搜索服务内部使用的独立 ArcGIS Server 实例。
对于不同敏感度的数据,可使用 ArcGIS Server 用户和角色来配置进一步细化的搜索服务访问权限。例如,您可以配置一种搜索服务供所有用户使用,而另一种独立的高安全性搜索服务只对使用 ArcGIS Server 配置的高安全性角色用户可见。
搜索服务性能
一个搜索服务实例(表示为一个 ArcSOC.exe 进程)一次只能对一个文件建立索引。例如,如果您分配的最大值为三个实例,而且列出了三个要建立索引的文件夹,则应看到三个正在建立索引 ArcSOC.exe 进程。如果只分配了两个实例的最大值,那么即使您列出了三个文件夹,也只能看到两个正在建立索引的 ArcSOC.exe 进程。只有等到 ArcSOC.exe 进程可用之后方可对另一个文件夹建立索引。
通过列出要建立索引的多个低级别文件夹(而不是一个高级别文件夹),可以提高性能。例如,您可配置您的服务器对 C:\Data\Canada、C:\Data\USA 和 C:\Data\Mexico 三个独立的文件夹建立索引,而不是仅对 C:\Data 一个文件夹建立索引。这样可以将索引工作分配到多个同步进程中。
您不必列出所有要建立索引的子文件夹,但列出几个低级文件夹相比于列出一个高级文件夹,会获得更好的性能。