操作マップ レイヤの構築

各マップ アプリケーションには、特定のユーザ グループが使用する操作マップ レイヤのセットが必要です。たとえば、ユーザは、ベースマップ上に観測値、センサー フィードやクエリ結果を表示し、操作タスクを実行して特定の任務や目標を達成します。これらの操作レイヤには多くの場合、マップ レイヤの操作に使用するツールのセットも含まれます。

ごく一般的に使用される操作マップ レイヤについては、こちらをご参照ください。提供する操作情報の種類を理解するうえで参考になります。

操作マップ レイヤの特性

メモメモ:

GIS ベースマップに使用されるデータセットによっては、Web マップ アプリケーション内の操作レイヤのデータ ソースとしてよく使用されるものがあることも注目に値します。このための設計を計画している場合は、それらのデータセットの操作マップ レイヤがベースマップ上にどうオーバーレイしているか、またベースマップとどう連携動作しているかを考慮する必要があります。

操作マップ サービスを公開する 3 つの方法

ユーザが GIS アプリケーションで使用する操作マップ サービスを公開するための一般的な方法は、次の 3 つがあります。

1. ダイナミック マップ サービスの公開

ArcGIS Server を使用して公開できるマップ サービスの種類の 1 つは、ダイナミック マップ サービスです。名前が示すとおり、マップ レイヤ表示が動的に生成されます。つまり、マップ サービスを表示するようサーバにリクエストするたびに、レンダリングが行われて表示されます。結果のマップ イメージは、リクエスト元のアプリケーションに送られ、ベースマップにオーバーレイされます。

ArcGIS Server を使用して提供するダイナミック マップ サービスを作成するには、まず ArcMap ドキュメントを作成し、マップ サービスとして公開する必要があります。結果のマップ サービスは、Web GIS マップ アプリケーションで 1 つのマップ レイヤとして使用されます。

操作レイヤ用の ArcMap ドキュメントは非常に単純で、1 つ、または少数の専用マップ レイヤのみが含まれます。結果のマップ サービスではデータへのアクセスが提供され、操作情報の表示や操作ができます。

このダイナミック マップ サービスは通常、ベースマップ サービス上に表示されます。操作マップ レイヤと、少数の他の専用操作マップ レイヤとを組み合わせて表示し、ステータス マップとすることもあります。

頻繁に更新されるマップ レイヤまたは分析モデルの結果として生成されるマップ レイヤを参照するマップ ドキュメントを、ArcMap で作成できます。たとえば、Web マップ アプリケーションでマップ レイヤを編集するユーザがいる場合、このマップ レイヤは動的であるべきです。このようなケースや他の多くのケースでは、マップを描画するたびに、マップ レイヤをレンダリングします。

ダイナミック マップ サービスには、操作レイヤの最新で正確なステータスを提供するという利点があります。ただし、動的マップ レイヤを使った方法では多くの場合、Web マップの描画がかなり遅くなります。そのため重要となるのは、ArcGIS Server で利用可能なきわめて高速の動的描画を用いたマップ サービス定義(MSD)ベースのマップ サービスを使用することです。MSD の詳細については、「マップ サービスのパフォーマンスと機能」をご参照ください。

2. キャッシュ マップ サービスの公開

操作マップ レイヤのもう 1 つの提供方法は、キャッシュ マップ サービスを使用することです。この方法では、マップ表示は事前に処理されて、マップ キャッシュに格納されます。この場合、ユーザがマップをサーバにリクエストするたびに、操作マップ レイヤの表示を生成する必要はありません。かわりに、適切なマップ タイルがサーバから取得され、パフォーマンスとスケーラビリティが大幅に向上します。

適用できるケースとして、操作マップ レイヤが静的で、変更の頻度が低い場合があります。この場合は、サーバからリクエストされるたびに新たにマップを処理するのではなく、マップを事前処理しておき、定期的に更新するという方法が取れます。この方法で、誰でも高速で効率的なマップ サービスにアクセスして使用できます。

キャッシュ マップ サービスはきわめてスケーラブルであるため、サーバ上の多くの同時ヒットにすばやく応答できます。大量のユーザ トラフィックが見込まれる場合、キャッシュを頻繁に更新する必要がありますが、レイヤをキャッシュするだけのメリットはあるでしょう。キャッシュ更新の最善策については、「マップ キャッシュの更新」をご参照ください。

キャッシュのタイルをすべて作成する時間あるいは空きディスク領域が確保できないなら、一部のタイルを事前に作成し、残りは必要になった時点で作成することをお勧めします。最初のユーザがマップ サーバにアクセスしたときに、マップ キャッシュがリクエストされたエリア(マップ タイルのセット)を処理し、キャッシュが構築されます。同じマップ タイルにアクセスする他のユーザは、新しいマップ キャッシュを使用することになります。ユーザがリクエストするたびに、キャッシュされたマップ タイルがあれば、それを取得します。ない場合は、タイルを処理してキャッシュします。マップ表示の処理を行う必要があるのは、最初のユーザのみです。他のユーザは操作レイヤのキャッシュされたマップを使用できます。

キャッシュ マップ サービスの構築の詳細については、「マップ キャッシュのヒントとベスト プラクティス」をご参照ください。

3. マップ グラフィックスとテキストとしてのクエリ結果の表示

操作情報を表示するのに最も効率的な方法の 1 つは、クエリの結果を使用することです。ユーザは GIS サーバを検索し、サーバはフィーチャ結果のセットを小さなレコード セットとして返します。サーバから返されるクエリ結果としては、フィーチャのセット、フィーチャの座標、各フィーチャの属性セットなどがあります。この結果は、対話型のグラフィックスと説明情報としてマップに表示されます。結果は操作、図表化およびサマリ処理ができ、クリックして各フィーチャの詳細情報にアクセスできるハイパーリンクとして使用できます。

この手法では、通常、結果のマップ レイヤを作成するアプリケーション プログラミングが必要です。各 Esri Web マッピング API には、クエリの実行方法、および結果をクライアント側グラフィックスとしてマップ上に表示する方法に関するヘルプが付属しています。


3/6/2012