パフォーマンスが向上するマップ コンテンツの最適化
データのセットアップと使用方法を最適化することで、ArcMap のパフォーマンスを向上させることができます。データ ソースの形式、データの場所、レイヤ、データ フレーム、レイアウトに対して設定するプロパティなど、速度には多くの要因が関係します。以下では、データをセットアップしてマップ コンテンツを操作するときにパフォーマンスを維持するためのいくつかのガイドラインを示します。
データをセットアップする
データを保存する形式を選択するときは、多くの場合、組織またはユーザのニーズ、データの目的、データのサイズ、データ管理要件の分析など、多くの要因のバランスを考えます。ただし、速度に関しては、一般にシェープファイルが最も速く、その次がパーソナル ジオデータベースで、ファイル ジオデータベースはそれより遅くなります。マップのパフォーマンスを最適化するには、リモート コンピュータではなく、マップの表示に使用するコンピュータにローカルに、マップのデータを置く必要があります。大きなデータセットの比較的小さいエリアを通常表示するマップの場合は、ArcSDE 経由でデータを提供すると、その同じデータをファイルに格納するよりパフォーマンスが大きく向上します。
複数のユーザがアクセスする場合、またはマップを提供する場合は、パーソナル ジオデータベースを使わないようにします。この形式は、これらの目的を想定して設計されていません。
データのセットアップに関するその他の考慮事項を次に示します。
- 投影法を同一にする - 可能な場合は、すべてのデータを 1 つの投影法で保持し、ArcMap で使用するときはデータ フレーム内で同じ投影法を使用します。提供するデータを編集またはオーサリングするときは、このことが特に重要です。すべてのレイヤが同じ投影法の場合、リアルタイムの投影計算によりパフォーマンスが低下することがなくなります。
- 結合またはリレートされたデータの操作 - 結合やリレートを通じてアクセスする追加されたフィールドのデータを、フィーチャのシンボル表示やラベル付け、検索の実行、その他の多くの操作に使用できます。ただし、結合およびリレートを通じてデータにアクセスすると、パフォーマンスが低下する場合があります。テーブル結合の最適化の詳細については、「テーブル結合の要点」をご参照ください。また、結合された情報またはリレートされた情報を含む新しいフィーチャクラスに、データをエクスポートすることもできます。
- 属性または空間インデックスの使用 - データ ソースが対応している場合は、検索またはレンダリングに使用するすべてのフィールドにインデックスを作成します。インデックスはデータ形式ごとに固有です。詳細については、「空間インデックスを追加してシェープファイル内のインデックスを変更する」および「空間インデックスの設定の概要」(ジオデータベース)をご参照ください。ジオプロセシング フレームワークでは、属性インデックスを作成するためのツールである [属性インデックスの追加(Add Attribute Index)]ツールも提供しています。
- データの単純化 - 小さい縮尺で表示するときは、レイヤを単純化したバージョンのデータを使用します。たとえば、世界の海岸線の詳細マップは、フル スケールでは描画に時間がかかる場合があります。このレイヤの頂点と線分の数を減らして単純化すると、描画は速くなり、小縮尺では見た目はほとんど変わりません。さらに、データを単純化すると、検索および個別属性表示操作のパフォーマンスも向上します。
レイヤ、ラスタ、レイアウトを最適化する
まず最初に行うことができる最も簡単な手順の 1 つは、マップを調べて、使われていないレイヤやデータ フレームを削除することです。次に、ページ レイアウトとデータ ビューの両方を調べて、マップの目的に関係のないデータ フレームやレイヤがマップ ドキュメントに含まれないことを確認します。さらに、レイアウト ビューでマップ エレメントを調べて、必要のないものを削除します。
これらのことを行った後は、以下のセクションで説明するその他の考慮事項を調べて、さらにパフォーマンスを改善します。シンボルとパフォーマンスの詳細については、「パフォーマンスが向上するマップ シンボルの最適化」をご参照ください。
- ベースマップ レイヤを使用して描画パフォーマンスを最適化する。詳細については、「ベースマップ レイヤの操作」をご参照ください。
- 特定のレイヤとフィーチャを自動的に非表示にする - レイヤの描画を最適化する最善の方法として、適切な縮尺でのみ描画すること、そして属性検索を使用して不必要なフィーチャが描画されないようにすることの 2 点が挙げられます。
マップが特定の縮尺のときには表示する必要がないレイヤがある場合は、縮尺依存を有効にします。たとえば、国境まで表示を縮小した場合は、縮尺依存を使用して、詳細な都市の交通機関レイヤを自動的にオフにすることができます。詳細なレイヤは縮尺が大きい(拡大した)ときにのみ描画します。小さい縮尺で詳細レイヤを描画する必要がある場合は、その縮尺での簡易シンボルを使用して描画速度を上げます。縮尺依存の設定方法については、「特定の縮尺でのレイヤの表示について」をご参照ください。
フィルタ設定は、マップ上のデータの量を制限するためのフィルタとして機能します。たとえば、ある県のマップを作成していて、フィーチャクラスに国全体のデータが含まれる場合は、フィルタ設定を使用することで、その県の境界内に含まれるフィーチャだけを表示できます。フィルタ設定の使用方法については、「レイヤ内のフィーチャのサブセットを表示する」をご参照ください。
- マップ データのローカル キャッシュを作成する - ジオデータベースに格納されたデータ、または ArcIMS フィーチャ サービスのデータを操作する際に、ArcMap フィーチャキャッシュ を作成すると、一般的にマッピング タスクを高速化できます。ArcMap フィーチャ キャッシュにより、ArcMap に現在表示されているマップ範囲のフィーチャをローカル コンピュータのメモリに一時的に格納することができます。フィーチャ キャッシュを使用すると、ローカル メモリからフィーチャをすばやく取り出すことができるため、パフォーマンスが向上することが多々あります。フィーチャ キャッシュが効果を発揮する操作には、大規模データセットまたは複雑なデータセットの描画、ラベリング、編集、フィーチャの選択、マップ上の複数のレイヤからの同じフィーチャの取得、フィルタ設定を使用したフィーチャの描画などがあります。フィーチャ キャッシュとそれを使用する状況の詳細については、「フィーチャ キャッシュの操作」をご参照ください。
- ラスタの表示 - ラスタの描画を速くするには、表示の品質を可能な限り低くする、適切なリサンプリング方法を使用する、リアルタイムで投影するのではなく本来の投影方法でラスタを表示するなど、いくつもの技法を使用できます。さらに、「ラスタのピラミッドの構築」をご参照ください。ピラミッドは、表示に必要な特定の解像度でのみデータを取得することで、ラスタ データの表示速度を高めることができます。
ラスタを操作するときに使用できる他のパフォーマンス向上手段については、「ラスタ データの表示の改善」をご参照ください。
- レイアウト ビューでのパフォーマンスの向上 - レイアウト ビューで、データ フレームの枠線の設定を確認します。丸角、背景、影などは、パフォーマンスの低下につながります。これらを使用せずプロパティを直角の角に設定すると、レイアウト ビューでのデータ フレームの描画パフォーマンスが向上します。これらのプロパティを変更するには、データ フレームを右クリックし、[プロパティ] をクリックして、[フレーム] タブをクリックします。
ArcGIS for Server で提供するマップを最適化する
マップの最適化のヒントは、ArcGIS for Server で提供するマップのオーサリングのパフォーマンス向上にも役立ちます。さらに、マップの提供に固有のヒントもいくつかあります。他のヒントについては、「マップ作成の検討事項」をご参照ください。
マップを提供するときは、対象の利用者に合わせてマップを設計します。適切なレイヤとシンボルを含めるようにして、利用者がそのアプリケーションで必要としないものはすべて除去します。目的のアプリケーションに必要ないマップ レイヤまたはデータ フレームを削除します。デフォルトでは少数のレイヤだけを表示し、それ以外のレイヤはユーザが必要に応じて表示できるようにします。
キャッシュ マップ サービスを使用すると、マップがレンダリングされるのはキャッシュの作成時に 1 回だけなので、常にマップを最も速く提供できますが、動的なデータや変化するデータの場合はキャッシュ マップの作成が現実的ではないことがあります。キャッシュ マップを利用するのが適切ではないときは、動的なマップ ドキュメントを用意してマップ サービス経由で提供します。また、ヘルプの各セクションに記載されたヒントに従うことでパフォーマンスを改善することもできます。