サーチ サービスの利用によって、ローカル ネットワーク上で、組織の 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 つの高レベルのフォルダーをリスト表示するよりも、いくつかの低レベルのフォルダーをリスト表示した方がパフォーマンスは向上するかもしれません。