サーチ サービス
サーチ サービスの利用によって、ローカル ネットワーク上で、組織の GIS コンテンツの検索可能なインデックスを利用できるようになります。サーチ サービスは、複数のデータベースおよび共有ファイル全体に GIS データが分布している、大規模なエンタープライズでの配置において最も役立ちます。これらのデータ ソースを参照する代わりに、GIS アナリストはサーチ サービスに URL を入力し、検索文字列を入力してデータを検索することができます。ArcMap は、ユーザがこのようにデータを検索した後、結果として得られるデータセットをマップにドラッグ&ドロップできるインタフェースを備えています。
サーチ サービスは、Windows オペレーティング システムのみでサポートされています。
サーチ サービスの仕組み
サーチ サービスは、サーバによって構築され保持される、GIS コンテンツのインデックスを利用しています。検索リクエストが生成されると、サービスは一致するインデックスを検索し、結果を返します。
ArcMap のカタログ ウィンドウに表示できる GIS データには、サーチ用インデックスを付けることができます。
最初にインデックスを構築するのには、多少の時間を要します。インデックスが構築されると、新しいアイテムが定期的にインデックスに追加されます(デフォルトでは 1 時間に 1 回)。既存のアイテムに対して削除されたアイテムまたは編集内容を検出するには、インデックスを一から再構築する必要があります。これはデフォルトによって 1 日に 1 回生じます。
ディスク上のインデックスのサイズは、所有しているアイテムの数と各アイテム説明に含まれているコンテンツの量によって異なります。
インデックスは、サーチ サービスの作成時に必ず作成されるコンパニオン ジオプロセシング サービスによって維持されます。ジオプロセシング サービスには、_indexer という接尾辞が付くサーチ サービスと同じ名前が付いています。ArcGIS Server Administrator Directory を表示すると、インデックスの構築に役立つ 2 つのサービスも表示されます。これらは、IndexGenerator および IndexingLauncher としてリストされます。
インデックスはサーバ上のディレクトリに格納されます。ArcGIS for Server をインストールすると、ディレクトリがデフォルトでは C:\arcgisserver\directories\arcgissystem\arcgisindex に作成されます。ArcGIS for Server を複数のコンピュータにインストールする場合、このディレクトリを編集して、サイト内のすべてのコンピュータがアクセスできる共有ネットワーク パスを使用する必要があります。
1 つのサーチ サービスは、サーバ上の 1 つのインデックス ディレクトリしか持つことができません。
サーチ サービスの作成方法
ArcGIS for Server をインストールすると、1 つのサーチ サービス(とそれに伴う _indexer サービス)がすでに作成されています。名前は Search で、デフォルトでは停止しています。サービスは ArcGIS Server Manager または ArcGIS for Desktop で開始できます。手順については、次のトピックをご参照ください。
また、ArcGIS Server サイトで複数のサーチ サービスを利用することもできます。サーチ サービスを追加作成するには、ArcGIS Server Administrator Directory を使用する必要があります。すべての手順については、「サーチ サービスの作成」をご参照ください。
サーチ サービスで使用するデータの準備方法
サーチ サービスで使用するデータを準備するには、ネットワーク上でデータを共有し、データ アイテムに関する適切な情報を提供し、サーチ サービスで使用するデータを格納するフォルダまたはジオデータベースを登録します。
ネットワーク上でのデータの共有
サーチ サービスを作成する前に、インデックスを付ける対象のすべてのフォルダをネットワーク上で共有し、ArcGIS Server アカウントがデータに対して読み取りアクセス権を持っていることを確認する必要があります。また、検索結果によってデータを追加する可能性のあるユーザには、そのデータへのアクセス権が必要となります。
データベース接続ファイル(*.sde)をインデックスを構築する共有ネットワーク ロケーションのフォルダに配置することで、データベースおよびエンタープライズ、ワークグループ、デスクトップ ジオデータベースをインデックスに含めることができます。ArcGIS for Server と ArcGIS for Desktop のどちらにも必要なデータベース クライアントがインストールされていることを確認し、接続にデータベース認証を使用している場合は、データベース接続ファイルにユーザ名とパスワードが保存されていることも確認します。
データ アイテムに関する適切な情報の提供
ArcGIS for Desktop では、データ アイテムに関して、概要、著作権、タグなどの情報を入力することができます。データ アイテムのカード上のこの基本情報が、インデックスに追加されます。アイテムの完全なメタデータは、インデックスに追加されません。
インデックス構築のためのフォルダとジオデータベースの登録
新しいサーチ サービスは、企業の GIS データ全体は検索しません。パフォーマンス上の理由から、サーチ サービスでは、明示的に登録されているフォルダとジオデータベースにのみインデックスが構築されます。
ネットワーク上で共有されており、ArcGIS Server アカウントにアクセス権が付与されているフォルダに、ファイルベースのデータ(シェープファイルなど)、ジオデータベース、およびデータベース接続ファイルを配置する必要があります。この後、サーチ サービスのプロパティを編集すると、共有フォルダを登録することができます。ジオデータベースとデータベース接続ファイルは直接登録することもできますが、ユーザと ArcGIS Server アカウントにアクセス権が付与されているネットワーク フォルダに格納する必要があります。
ArcGIS Server Manager でフォルダを登録する方法については、「サーチ サービスへのデータ フォルダとジオデータベースの登録」をご参照ください。
サーチ サービスのプロパティを編集する方法
サーチ サービスを開始したら、サーチ インデックスの場所や、新しいアイテムのインデックスを構築する頻度、インデックスを最初から再構築する頻度、インデックスを最初から再構築する日時、インデックスに含めるフォルダとデータベース接続を調整することで、サービスを微調整できます。これらのパラメータは ArcGIS Server Manager または ArcGIS for Desktop で調整できます。手順については、次のトピックをご参照ください。
サーチ サービスの使用方法
サーチ サービスは、ArcGIS for Desktop の [検索] ウィンドウから使用します。
まず、ArcGIS for Desktop で使用するサーチ サービスを指定する必要があります。これには、[インデックス/検索オプション] ボタンをクリックしてから、[高度な設定] タブで [追加] をクリックします。[サービスの URL] を取得するには、[開く] ボタンをクリックして、GIS Server 接続のサービスを参照します。これにより、[サーチ サービスの登録] にサービスの URL、名前、および説明が入力されます。
[検索] ウィンドウで検索を実行する前に、[検索] ツールバーのドロップダウン リストをクリックして [エンタープライズ] を選択します。これにより、ローカル コンピュータまたは ArcGIS Online 上で検索を実行する代わりに、サーチ サービスを使用するようになります。
サーチ サービスへのリクエストは、空間的に制限できます。つまり、[検索] ウィンドウの [現在の範囲内] 検索オプションを選択して検索すると、現在のマップ範囲内にある結果だけが返されます。サーチ サービスは、[検索] ウィンドウの [縮尺に基づく空間フィルタを有効化] オプションもサポートしています。
サーチ サービスのセキュリティ
サーチ サービスは、内部ネットワーク上での使用に限定して設計されています。サービスの一部をインターネットに公開しているサーバ インスタンスがある場合、サーチ サービスによる内部使用に特化した ArcGIS for Server のインスタンスを別個に作成することを検討してください。
さまざまな検出感度レベルのデータがある場合、ArcGIS for Server のユーザとロールを使用して、サーチ サービスに対してより厳密なアクセスを設定することができます。たとえば、誰もが利用できるサーチ サービス、および ArcGIS for Server を使用して構成した、セキュリティの高いロール内のユーザのみに表示される、別個の高度なセキュリティのサーチ サービスを設定することができます。
サーチ サービスのパフォーマンス
サーチ サービスの 1 つのインスタンスは、一度に 1 つのフォルダのインデックスだけを構築できます。たとえば、最大で 3 つのインスタンスを割り当てて、インデックス付けをするフォルダを 3 つリストアップした場合、タスク マネージャにはインデックス付け作業を行う 3 つのプロセスが表示されるはずです。最大で 2 つのインスタンスを割り当てた場合には、たとえ 3 つのフォルダをリスト表示していても、2 つのプロセスのみがインデックス付け作業中として表示されます。フォルダの中の 1 つは、プロセスが利用できるようになるまで、インデックス付けを待たなければなりません。
インデックス付けをする 1 つの高レベルのフォルダの代わりに、複数の低レベルのフォルダをリスト表示することによって、パフォーマンスを向上させることができます。たとえば、1 つのフォルダとして C:\Data というインデックス付けのみを設定する代わりに、3 つの別々のフォルダとして、C:\Data\Canada、C:\Data\USA、C:\Data\Mexico というインデックス付けを設定することができます。これにより、複数の同時進行プロセスの間でインデックス作業を分配することができます。
インデックス付けをするサブフォルダをすべてリスト表示する必要はありませんが、1 つの高レベルのフォルダをリスト表示するよりも、いくつかの低レベルのフォルダをリスト表示した方がパフォーマンスは向上するかもしれません。