ArcGIS Server ジオプロセシング サービスの使用
Toolboxes can reside in ArcGIS Server. A toolbox in ArcGIS Server is called a geoprocessing service. Tools within a geoprocessing service are called tasks. In ArcGIS Desktop, there is no real difference between geoprocessing services and toolboxes or between tasks and tools; it is only for other clients of ArcGIS Server (such as web browsers and other Internet-based software) that a distinction is made between services and toolboxes, as well as tasks and tools.
You can add a geoprocessing service to the Catalog window and use its tools just like any other tool. When you execute a geoprocessing task within a service, it executes on the server, using the resources on the server, freeing up your computer for other tasks.
There are two ways of finding services: browsing or searching. In both cases, you need to first connect to the server (you only need to connect once), and you must know the URL of the server to connect to it.
サービスの参照
Your first step is to connect to ArcGIS Server. From within the Catalog window
- ArcGIS Server には、[GIS Servers] ノードから接続することができます。
- 接続は任意のフォルダに作成することができます。フォルダを右クリックしてから [新規作成] → [ArcGIS Server 接続] の順にクリックします。
In order to browse to and use geoprocessing tasks, you must connect to the server as a user (in the Add GIS Server dialog box, Use GIS Services is checked), not as an administrator (Manage GIS Services).
サービスの検索
- 「ArcGIS での検索の使用」の説明と以下の図を参照して、使用する GIS サーバにインデックスが構築されていることを確認します。
- 検索ウィンドウで、ローカル ツールの場合と同じ方法でタスク(ツール)を検索します。
ジオプロセシング タスクの実行
ジオプロセシング サービスのタスクは、他のツールとまったく同様に、ツール ダイアログ ボックス、ModelBuilder、またはスクリプトで実行します。唯一の違いは、ツールをフォアグラウンドで実行する場合です。一部のタスクはサーバから結果が返されるのを待機しますが、待機しないタスクもあります。これらのタスクはサーバにタスクを送信し、必要に応じてサーバに結果を問い合わせます。サーバに送信されたタスクのステータスの確認には結果ウィンドウを使用します。詳細については、後述の「同期タスクと非同期タスク」をご参照ください。
タスクの結果の操作
ジオプロセシング タスクによって結果ウィンドウに追加される結果には、出力データセットの名前ではなくステータスが表示されます。ステータスには、次の 5 つの値があります。
- <なし>
ツールはサーバで現在も実行中であり、出力は書き込まれていません。この状態は、非同期ツールのみに適用されます。詳細については、後述の「同期タスクと非同期タスク」をご参照ください。
- <ローカルのテンポラリ フォルダ内のデータ>
ツールの実行は完了しており、出力データはコンピュータのメモリまたはシステムのテンポラリ ディレクトリのどちらかにあります。データを参照する ArcMap レイヤがある限りデータは削除されません。データを保存するには、この一時的な場所から既知の場所にコピーする必要があります。簡単な方法としては、[コピー(Copy)] ツールを使用し、このツールの入力フィーチャのパラメータに結果からデータセットをドラッグします。出力を右クリックして [ロケーションをコピー] をクリックすることもできます。これにより、フィーチャクラスのパスがクリップボードにコピーされるので、[コピー(Copy)] ツールの入力フィーチャのパラメータのようなテキスト指定が可能な任意の場所に貼り付けることができます。
- <サーバ上のデータ>
データはサーバ上にあります。このステータスは、データを ArcMap、ArcGlobe、または ArcScene に描画する結果のマップ サービスがあることも意味します。この結果のマップは、サーバでツールの実行が終了すると、自動的にコンテンツ ウィンドウに追加されます。この結果のマップ サービスをコンテンツ ウィンドウに追加する必要がある場合は、結果を右クリックして [サーバ レイヤの追加] をクリックします。
結果を右クリックして [データの取得] をクリックする方法もあります。この場合は、データがサーバからコンピュータにコピーされます。コピー後のステータスは、<ローカルのテンポラリ フォルダ内のデータ>、<転送制限外のデータ>、<利用不可のデータ> のいずれかになります。
- <転送制限外のデータ>
転送するフィーチャの最大数を超過したため、[データの取得] アクションですべてのデータをサーバからコンピュータに転送することができませんでした。大きなデータセットをコピーすると、他の GIS サービスを実行するサーバの能力が低下し、ネットワークが停滞します。そのため、サービスの作成者は、サーバからクライアント コンピュータにコピーできるフィーチャの最大数を指定しています。この制限を超過するデータをコピーする必要がある場合は、サービスの作成者またはサーバ管理者に連絡して、データを取得するための他の方法を検討する必要があります。
- <利用不可のデータ>
[データの取得] アクションでサーバ上にデータが見つかりませんでした。最も可能性が高い原因は、タスクの結果が古いものだとサーバ管理者が判断し、サーバ上の領域を解放するためにデータを削除してしまった場合です。
環境設定の無視
ジオプロセシング サービスではタスクの実行に影響のあるすべての環境設定が明示的に設定され、ユーザが現在のセッションで設定したすべての環境設定が無視されます。このルールの唯一の例外は、ラスタ データセットやファイル(*.zip ファイルなど)を出力するタスクです。これらのタスクの場合、ラスタ データセットやファイルはシステムのテンポラリ ディレクトリに書き込まれます。
サーバ タスクのローカル ツールボックスへのコピー
ジオプロセシング サービスからカスタム ツールボックス(ユーザが作成したツールボックス)にタスクをコピーすることができます。コピーしたタスクをカスタム ツールボックスから実行すると、タスクは引き続きサーバ上で実行されます。
サーバ ツール実行完了前のアプリケーションの終了
非同期ツール(以下を参照)を指定した後は、操作中のアプリケーションを終了することができます。たとえば、ArcMap の操作中に、実行を開始し、マップ ドキュメントを保存し、ArcMap を終了することができます。後でこのドキュメントを開くと、ArcMap からサーバにクエリが送信され、結果のステータスが確認され、結果ウィンドウの結果が更新されます。実行を開始してから ArcMap(または ArcGlobe や ArcScene)を終了するこの方法を使用する場合は、結果を保存して後で確認するために、必ずマップ ドキュメントを保存してください。
同期タスクと非同期タスク
ジオプロセシング サービスとそのタスクは、同期と非同期のどちらかになります。同期とは、タスクがサーバ上で実行されている間はコンピュータが待機状態になることを意味します。非同期とは、ツールの実行が完了するのをコンピュータが待機する必要はなく、他のタスクを処理できることを意味します。
タスクを同期または非同期のどちらで実行するかを決定するのはサービスの公開者です。同期ツールとして公開するタスクは、迅速に実行され、出力データセットが小さいものだけにする必要があります。
サーバ ツールが同期であるか、非同期であるかを判断する方法は 2 つあります。
- ArcGIS Server に対する管理権限がある場合は、カタログ ウィンドウでサーバを参照し、ジオプロセシング サービスを右クリックしてから [サービス プロパティ] をクリックします。ツールの実行タイプが [パラメータ] タブに表示されます。
- ツールを実行し、書き出されるメッセージを確認します。非同期サービスが実行された場合に最初に書き出されるメッセージは「サーバ メッセージ」です。このタイプのジオプロセシング サービスは、ArcMap で常にバックグラウンド処理として実行されます。同期ツールは「実行」と表示して開始されます。次に示す 2 つの結果は、非同期と同期で実行されています(GIS サーバ管理者による設定)。
ArcMap 内で非同期ツールを実行し、ツールの結果のマップへの追加を有効にしている場合、レイヤはマップに追加されますが、表示されません(オンの状態)。これは、いつツールの実行が終了し、描画する出力が作成されるのかが ArcMap にはわからないためです。
非同期ツールの実行が終了しても、自動的には通知されません。非同期ツールの進行状況は、結果ウィンドウで確認することができます。ツールの実行中は、結果の隣に砂時計が表示されます。結果を右クリックして [キャンセル] をクリックすると、実行をキャンセルすることができます。