ArcGlobe のキャッシュ

キャッシュ プロセスでは、シンボル表示されたデータが、インデックス処理され、タイルと詳細レベル別に整理されます。ArcGlobe に不可欠の部分であるこの手法は、非常にサイズの大きいデータセットの表示を可能します。キャッシュを使用しない ArcScene は、より小さな局部的データセットを扱うのに適しています。

ほとんどのユーザにとってキャッシュは自動処理されるものですが、場合によっては、キャッシュ設定を直接管理することが有効なことがあります。たとえば、現在の ArcGlobe ドキュメント専用にメモリ キャッシュ設定をカスタマイズできます。定期的にキャッシュの設定と保存済みのディスク キャッシュを操作する場合は、ArcGlobe のキャッシュについて十分に理解することをお勧めします。

ArcGlobe が使用するキャッシュには、メモリ キャッシュとディスク キャッシュの 2 種類があります。

メモリ キャッシュ

メモリ キャッシュは、ArcGlobe 用に割り当てた物理メモリ(RAM)を指します。パフォーマンスを最大限に活用するために、使用する各種のデータに割り当てるメモリ量を設定できます。たとえば、大型の DEM レイヤが多数あるドキュメントを表示するときには、標高レイヤに多数の物理メモリを割り当てることができます。

ArcGlobe のキャッシュ管理の詳細

ディスク キャッシュ

ディスク キャッシュでは、ArcGlobe ドキュメントのレイヤごとに、一時ファイルのセット、つまりキャッシュを作成します。レイヤのディスク キャッシュの名前は、レイヤの表示名とグローバルな識別子(GUID)を連結したものです。データ ソースのキャッシュではなく、レイヤのキャッシュが生成されるので注意してください。たとえば、赤の線で表示されるラインフィーチャクラスには、同じライン フィーチャクラスでも緑の線で表示されるレイヤとは別のディスクキャッシュが必要です。レイヤのキャッシュの場所の設定、およびキャッシュを削除する時点を含む、ディスク キャッシュの管理の詳細については、「ArcGlobe のキャッシュ管理」をご参照ください。

データをナビゲートするときに、移動したエリアの表示がディスクにキャッシュされます。このため、その場所を次に表示したとき、より高速で表示できるようになります。デフォルトでは、このキャッシュは要求時にキャッシュの方法で生成されます。

また、レイヤの全キャッシュもできます。この場合、可能な詳細レベルすべてについて、データの全範囲がキャッシュされます。これはつまり、どの位置を参照するか、どのスケールで表示するかには関係なく、そのビューのキャッシュが生成され、レイヤができるだけ短時間でレンダリングされるということです。

ただし、多くの場合、データの全範囲が特定の詳細レベルでのみキャッシュされる、レイヤの部分キャッシュが最適です。適切な表示スケールのみをキャッシュすることにより、パフォーマンスを維持しながら、サイズとキャッシュの生成時間を大幅に短縮できます。

パフォーマンスを維持するもう 1 つの方法として、キャッシュ結合があります。この方法では、グループ レイヤについてキャッシュを作成できるので、ArcGlobe ドキュメント用として保存して表示するディスク キャッシュの数を低減できます。

ArcGlobe のグループ レイヤ キャッシュの作成の詳細

ディスク キャッシュを作成して結合したら、場合によっては、それらのディスク キャッシュを新しい場所に移動する必要があります。たとえば、ArcGIS Globe Server で使用するために ArcGlobe ドキュメントを配置する場合、または現在のデフォルトのキャッシュの場所のディスク容量が不足している場合です。ディスク キャッシュは高度に構成されたフォルダセットですが、複数の場所間に移動できます。

増大したディスク キャッシュの移動と配置の詳細

自動ディスク キャッシュの動作

レイヤのキャッシュは、アクセス可能な任意のディレクトリに配置できますが、通常は整合性のために同じ場所に保持することをお勧めします。デフォルトの設定では、すべてのキャッシュを同じローカル ディレクトリに配置します。ArcGlobe のデフォルトのキャッシュ設定では、現在のユーザの Application Data\Esri\Local Caches フォルダのすぐ下の GlobeCache になります。

レイヤのキャッシュのライフ サイクルは、以下の一連のルールに従います。

キャッシュの作成

ディスク キャッシュは、新しいレイヤが ArcGlobe に追加されたときに自動的に作成されます。

別の ArcGlobe セッションからレイヤがコピーされた場合、または ArcGlobe のレイヤ ファイルとしてレイヤが保存された場合、そのレイヤのキャッシュはすでに存在し、新規キャッシュは作成されません。これにより、主要なレイヤの全キャッシュまたは部分キャッシュを作成して、多数の ArcGlobe ドキュメントで再利用できます。

キャッシュの無効化

ディスク キャッシュは、レイヤの表示が変更されたときに自動的に無効になります。たとえば、シンボルの色を変更した場合、またはラベルを有効にした場合、そのレイヤのキャッシュは無効になります。レイヤの表示設定を変更しても、キャッシュは無効になりません。レイヤのキャッシュ全体を手動で無効にするには、レイヤを右クリックして、[最新の情報に更新] をクリックします。レイヤのキャッシュを部分的に無効にするには、[レイヤ プロパティ] ダイアログ ボックスの [キャッシュ] タブにある [高度な設定] ボタンでアクセスできる、[高度なキャッシュ管理] ダイアログ ボックスで地理範囲を指定します。

ArcGlobe ドキュメントまたはレイヤ ファイルに保存されていないレイヤのキャッシュを無効にすると、既存のキャッシュが空になり、要求時に新しいシンボルを使用して再度作成されます。

ただし、ArcGlobe ドキュメントまたはレイヤ ファイルに保存されているレイヤのキャッシュを無効にすると、元のキャッシュが残され、更新されたシンボル用に新規キャッシュが作成されます。これが行われる理由は 2 つあります。その 1 つは、そのレイヤが他のドキュメントで使用される可能性があり、元のシンボルとキャッシュを受け取る必要があるからです。もう 1 つは、レイヤのシンボルを変更した後に保存せずに ArcGlobe を終了すると、ドキュメントを再度開くときに元のキャッシュが存在するからです。この副作用の 1 つは、時間が経つと不要なキャッシュが増加する場合があることです。

キャッシュの削除

不要なキャッシュは、ArcGlobe の終了時に自動的に削除されます。たとえば、ArcGlobe に新しいレイヤを追加して、レイヤをドキュメントまたはレイヤ ファイルに保存せずに終了すると、追加したレイヤの要求時キャッシュが削除されます。この理由は、そのレイヤを参照するドキュメントまたはレイヤ ファイルがないので、キャッシュが使用されないからです。

このルールの例外は、手動で生成した全キャッシュまたは部分キャッシュです。これらのキャッシュは、レイヤをレイヤ ファイルまたは ArcGlobe ドキュメントに保存していない場合でも、ArcGlobe の終了時に削除されません。ただし、これらのキャッシュは独立するので、これらのキャッシュを参照する唯一の方法はキャッシュ ディレクトリから最上位のレイヤ ファイルを追加することです。これらの独立キャッシュはソース データを参照せず、データ表示の単なるスナップショットです。キャッシュ管理を簡略化するために、レイヤ ファイルまたは ArcGlobe ドキュメントによりすべてのキャッシュを接続しておく習慣を付けることをお勧めします。

ディスク キャッシュを使用しないようにレイヤ プロパティを設定すると、そのレイヤの既存のディスク キャッシュが自動的に削除されます。また、これによりキャッシュはディスクに書き込まれません。ディスク キャッシュを使用しないようにレイヤを設定するには、[レイヤ プロパティ] ページの [キャッシュ] タブを表示して、[ディスク キャッシュを使用しない] をオンにします。すぐに既存のディスク キャッシュ ファイルが削除されます。レイヤに全キャッシュがある場合は、キャッシュを削除する前に警告が表示されます。

ArcGlobe の終了時に、必ずキャッシュを削除するようにレイヤを設定することもできます。これは、ArcIMS サービスの気象データなど、定期的に表示が変化する動的なコンテンツで便利です。

アプリケーションを終了するかドキュメントを閉じるときに、レイヤ キャッシュが自動的に削除されるか独立する場合には ArcGlobe により警告が表示されます。[変更を保存] ダイアログ ボックスに「保存しないと、いくつかのレイヤ キャッシュが失われます。」のメッセージが表示されます。終了時に削除するように設定したレイヤ キャッシュについては、このメッセージは表示されません。

以下の図に、キャッシュ削除を制御する 2 つのオプションを示します。適用すると、最初のオプションはすぐにレイヤのディスク キャッシュを削除します。一方、2 つ目のオプションは、ArcGlobe の終了後、またはレイヤの削除後にのみディスク キャッシュを削除します。

ArcGlobe レイヤのキャッシュ削除オプション

関連項目


7/10/2012