ArcGIS Server のマップ キャッシュ Tips (6) - マップ キャッシュ作成

ここまでは、マップ キャッシュを作成する前の設定をご紹介してまいりましたが、今回は実際にマップ キャッシュを作成する際の Tips をご紹介します。

1)最適な画像フォーマットの選択
ArcGIS Server で生成するマップ キャッシュの画像フォーマットは PNG や JPEG などがサポートされています。よりきれいなマップ キャッシュを作成する場合には PNG32 を選択すると良いでしょう。しかし、実際にはベクタ データのマップのマップ キャッシュを作成する場合など、PNG8 でも十分満足できることがあります。基本的にはベクタ データの場合は PNG、ラスタ データの場合はJPEGを選択します。ファイル サイズが大きいということは、より画像生成やディスクへの書き込み時間が増えることとなります。必要に応じてマップ キャッシュのフォーマットを選択してください。

2)アンチエイリアス
アンチエイリアスも ArcGIS Server のマップ キャッシュではサポートされております。アンチエイリアスを使用することでよりきれいなマップ キャッシュを作成できますが、その分マップ キャッシュの作成処理の負荷が増します。

3)マップ キャッシュを作成する範囲
例えば、日本全国のマップからマップキャッシュを作成する場合、マップの範囲には海洋部分が含まれてしまいます。全ての範囲のマップ キャッシュを作成すると、キャッシュを作成する範囲が広くなり、その結果、処理時間とマップ キャッシュのサイズが増えてしまいます。これを防ぐためには、マップ キャッシュを作成する範囲を指定する必要があります。例えば以下の図のように、日本全国と重なる部分のメッシュ(赤枠)を作成しその部分のみマップ キャッシュを作成することが可能です。

Capture1_2

また、小縮尺時と大縮尺時でマップ キャッシュを作成する範囲を変更することも可能です。マップ キャッシュを作成する際に、作成する縮尺を指定可能なので、範囲と縮尺をうまく組み合わせることで不必要なキャッシュの作成を防ぐことが可能です。

この方法は以下の部分で指定することが可能です。

Capture2_2

4)マップ サービスのインスタンス数
上述の通り、マップ サービスを作成する際は CPU のリソースを多く使用します。一般的な考え方としては、マシンに搭載されている「コア数 + 1」のインスタンスを指定してください。これにより全てのコアを使用して効率的に マップ キャッシュを作成することが可能です。しかし、ディスクの書き込み速度やその他のマシンのリソースによっては、「コア数 + 1」が常に最適であるとは限りません。マップ キャッシュ作成時には、前もって特定の範囲と縮尺でテストを行い最適な設定を行ってください。

5)オンデマンド キャッシュ
マップ キャッシュの作成方法のひとつとしてオンデマンド キャッシュという方法があります。この方法はあらかじめマップ キャッシュを作成するのではなく、特定の範囲にリクエストがあった場合にはじめてマップ キャッシュ(画像)が作成されるため、レスポンス時間はマップ キャッシュを使用しない、通常のアクセスと同じとなります。しかし、一旦マップ キャッシュが作成されるとその範囲へのアクセスはマップ キャッシュが使用されるためレスポンス時間が向上します。この方法を有効的に使用するには、アクセス頻度の高い範囲や縮尺は通常通りにマップ キャッシュを作成し、アクセス頻度の低い範囲や縮尺はオンデマンドでマップ キャッシュを作成するといった方法を使用してください。初期のマップ キャッシュ作成のコストが軽減されるはずです。

Capture3_2

今回まで6回に渡り、マップ キャッシュ作成の Tips をご紹介してまいりました。これまでの情報を、マップ キャッシュ作成の効率化や ArcGIS Server の効果的なシステム構築/運営にご活用ください。