データ アクセスのパフォーマンスに影響を与える設定

データにアクセスする際のパフォーマンスに影響を与える、レイヤー、データ、マップ、プロジェクトの設定があります。 以下のセクションで、設定の調整のコンテキストと、ArcGIS Pro のデータ アクセス ワークフローへの影響について説明します。

データの構成

ユーザーがマップにレイヤーを追加する前に、データ所有者はクエリのパフォーマンスを向上するためにソース データを構成することができます。

インデックス

データのインデックスを使用すると、基礎となるデータ ソースがデータを効率的に取得できるようになります。

データベースまたはジオデータベースでデータを作成する場合、ArcGIS Pro から送信される where 句の述語フィルターにどのフィールドを含めるかを考慮します。 たとえば、これらの where 句は、レイヤーに適用する定義クエリ、サブタイプ グループ レイヤーで使用されるサブタイプ フィールド、別のレイヤーとの結合のキー フィールドとして使用するフィールド、レイヤーのシンボル表示に使用されるフィールドとして取得されます。 属性インデックスをこれらのフィールドに適用されていることを確認します。 空間データの場合、空間インデックスがこれらのデータセットに存在することを確認します。

空間参照

可能であれば、すべてのデータを同じ空間参照に格納します。 異なる空間参照のデータが同じマップに追加された場合、データはリアルタイム投影する必要があります。 データをリアルタイム投影するとパフォーマンス コストが大きくなります。 コストの大きさは、データの複雑さと、投影するデータの量に依存します。

Web フィーチャ レイヤーのデータ ソースは、基礎となるフィーチャ サービスが実行されているサーバー上にデータを再投影します。 これによってサーバーの処理が追加され、全体的な CPU 使用量も増えます。

フィーチャ ビン

数万個以上のポイントを含むポイント フィーチャクラスがあり、それがリレーショナル データベース (エンタープライズ ジオデータベースを含む) またはクラウド データ ウェアハウスに格納されている場合、フィーチャクラスでフィーチャ ビニングを有効化します。 これにより、データ ソースはポイントを「ビン」と呼ばれるポリゴンに集約できるようになります。 ArcGIS Pro のマップにフィーチャクラスを追加したり、フィーチャクラス間を移動したりする場合、すべてのポイントを描画するよりもビンを描画する方が時間を短縮できます。

ヒント:

また、ArcGIS Pro でマップを構成し、ポイント フィーチャをビンに集約することもできます。 これは、フィーチャ ビニングが有効化されていないフィーチャクラスや、他のデータ ソースのポイント データでサポートされています。 このシナリオでは、集約は ArcGIS Pro コンピューターで行われます。 ArcGIS Pro によって生成されたビンは、すべてのポイントを描画するよりも短時間でレンダリングされますが、データ ソースによって生成されたビンほど短時間でレンダリングされません。 詳細については「ビンへのフィーチャの集約」をご参照ください。

マップとレイヤーの作成

ArcGIS Pro でマップを作成する場合、クエリと描画のパフォーマンスを最適化するためのマップとレイヤーの設定を構成できます。

表示縮尺範囲

レイヤーが描画される縮尺を制限することは、マップ上で不要なクエリを回避するための最も効果的な方法の 1 つです。 レイヤーの表示設定を適切な縮尺に制限することで、大量のデータを要求するクエリを削減でき、サーバーへの負担が軽減されるとともにパフォーマンスも向上します。 この推奨事項はすべてのレイヤーに加え、これらのレイヤーのラベルにも適用されます。 手順については、「マルチスケール マップの作成」をご参照ください。

ラベル

ArcGIS Pro でのラベリングは、特にマップとシーン内のフィーチャに関する説明テキストを自動的に生成して配置するプロセスを指します。 ラベルとはマップに動的に配置されるテキストです。 テキスト文字列は、1 つ以上のフィーチャ属性から作成されます。 ラベリングの利用によってテキストをすばやくマップに追加することができるので、個々のフィーチャに手動でテキストを追加する必要がなくなります。 これは、データの変更が予定されている場合や、さまざまな縮尺で複数のマップを作成する場合に役立ちます。

ラベルが縮尺やパフォーマンスを向上するために作成されていることを確認してください。 マップ内で複数のラベル クラスを使用する場合、ArcGIS Pro のサマリー レポート機能を使うことで、パフォーマンスの問題を引き起こす可能性があるラベルの問題を特定できます。 サマリー レポート機能の詳細については、「ラベリング サマリー レポートの使用」をご参照ください。

ラベルを作成する際は、マップが小縮尺で多数のラベルを描画しないよう表示縮尺範囲を設定します。 グラフィック テキストを使用する場合、数百個以上のテキストを格納するにはジオデータベース アノテーションを使用することを検討してください。

フィーチャ ウェイトは控えめに使用します。 ラベル エンジンは個々のラベルを配置する前にすべてのフィーチャの場所を評価する必要があるので、[なし] 以外のフィーチャ ウェイトを使用すると、ラベリングの処理速度が極端に低下する可能性があります。

ポイント フィーチャ、アノテーション フィーチャ、ディメンション フィーチャはそれほど複雑ではないため、フィーチャ ウェイトがラベリングのパフォーマンスに与える影響ははるかに少ないですが、フィーチャクラスに含まれるフィーチャの数に左右されます。

ポップアップ

ポップアップ機能は [マップ操作] ツールに組み込まれています。このツールは、ArcGIS Pro で一般的なナビゲーション コマンドを使用する際の主要なツールです。 マップまたはシーンでフィーチャ レイヤーを表示するときに、ポップアップを開き、選択を行ったり選択を変更したりすることなく、フィーチャに関する属性情報を表示できます。

フィーチャをクリックしたときに、管理された関連情報を表示するよう、特定のワークフローに合わせてポップアップをカスタマイズできます。 ポップアップに含まれないデータは ArcGIS Pro に読み込まれないため、[属性] ウィンドウを開いたり、レイヤーのテーブルを開いたりするなどの方法よりも属性の表示にかかる時間を短縮できます。

ポップアップをカスタマイズする場合、次のエレメントのパフォーマンスおよびスケーラビリティに影響が及ぶことがあります。

  • フィールド - 表示できるフィールドの数を選択したり、関連する数値フィールドの統計情報を含めたりできます。 より多くのフィールドが返されるので、ポップアップあたりのクエリ応答数も多くなります。 ポップアップを作成する際は、ワークフローに必要なフィールドを慎重に検討し、必要ではないフィールドは除外します。 フィールドの統計情報を返すには、データ ソースに対する個別のクエリが必要です。 ユーザーが必要とする場合にのみ、関連レコードの統計情報を含めます。
  • 添付ファイル - 添付ファイルは、ファイルのリストとして、または画像データの場合はサムネイル画像として、ポップアップで返すことができます。 リストとして表示する場合、メタデータを使用してリストの情報をポップアップに提供するため、データ アクセス リクエストへの影響は低くなります。 しかし、ArcGIS Pro で添付ファイルを開いたり、添付ファイルのサムネイルを表示したりすると、添付ファイルのデータがクエリされます。
  • ArcGIS Arcade - Arcade を使用してポップアップをカスタマイズする場合、ポップアップに表示する情報を返す FeatureSets を使用できます。 Arcade 式での FeatureSets の使用については、Arcade ドキュメントの FeatureSets のパフォーマンスポップアップの情報をご参照ください。

マップチップ

ポインターをフィーチャ、サーフェス、またはラスター画像上に置くと、マップチップに属性や表示式などの情報が表示されます。 マップチップはレイヤー プロパティ設定です。ポップアップや [属性] ウィンドウを使用しなくても、表示フィールド情報に直接アクセスできます。

マップチップが有効な場合、マップチップに含まれる情報を提供するために多くのクエリが必要となります。 フィーチャにカーソルを合わせると、レイヤーの表示フィールドの値を取得するためのクエリが送信されます。 これは、マップのフィーチャにカーソルを合わせるたびに、描画順序にリストされる最初の 4 つのレイヤーで行われます。 これによりデータ格納層に過度の負荷がかかるため、ArcGIS Pro のパフォーマンスが低下します。 ワークフローの一部として表示フィールドへのクイック アクセスが必要ない場合は、マップチップを無効にすることをお勧めします。

フィルター

ArcGIS Pro のフィルターは、ワークフローに必要なデータを操作できるよう、マップ コンテンツの焦点を絞るのに役立ちます。 焦点を絞るためにマップやレイヤーに適用するフィルタリングにはいくつかの種類があります。 これらのフィルタリング設定には、要求されるデータ量を減らせるという利点もあります。

定義クエリ

定義クエリを使用して、データ ソースから取得するフィーチャをフィルターすることで、レイヤー内で操作するフィーチャのサブセットを定義できます。 定義クエリは、検索条件設定で SQL 構文で記述された 1 つ以上の句で構成されます。 ファイルおよびデータベースをベースにしたデータ ソースでは、定義クエリは ArcGIS Pro のクライアント側で適用されます。 Web フィーチャ レイヤーでは、公開する前に定義クエリをマップ レイヤーに適用できます。 公開前に適用する場合、Web フィーチャ レイヤーはすべてのリクエストの定義クエリを優先し、ArcGIS Pro などのクライアントが Web フィーチャ レイヤーを使用する際に表示不可能な永続的なフィルターとして機能します。

タイム フィルターとレンジ フィルター

ArcGIS でテンポラル プロパティが定義されているレイヤーは時間対応と見なされます。 ArcGIS Pro のマップ内で時間対応レイヤーを使用する場合、タイム スライダーを使用してフィルタリングを行えます。 レンジ設定を構成することで、レンジ スライダーを使用して、データの属性に基づいてフィルターすることもできます。 レンジ スライダーとタイム スライダーの両方を使用すると、マップの表示設定をカスタマイズして、関心のあるデータに焦点を当てることができます。 これらの設定によりクエリされるデータ量を減らすことができ、パフォーマンスを向上することができます。

フィルターを使用する利点

フィルターがデータに正しく適用されると、クエリ応答のサイズが小さくなり、データ ソースからクライアントに送信されるデータ量が削減されます。 アプリケーションは特定のワークフローに関連するフィーチャに焦点を当てます。

フィルターを使用する場合の注意事項

定義クエリの使用時にスケーラビリティとパフォーマンスを向上するには、定義するクエリが選択的であることを確認します。 選択的クエリの一例として、color = 'red' など、列の特定の値に対するクエリが挙げられます。 反対に、非選択的クエリには objectID > 1 などがあります。 最初の例では、color フィールドの値が red の行のみが返されます。 2 つ目の例では、データ ソースから 1 行を除くすべての行が返されます。 非選択的な定義クエリを追加すると、レイヤーに対して返されるデータの量は減少しません。最悪のシナリオでは、クエリ実行にかかる時間によりパフォーマンスが低下することもあります。

選択的クエリを効果的に記述するには、データとデータ分布に関する知識が必要です。 定義クエリを頻繁に使用する場合は、クエリで参照するフィールドに属性インデックスがあることを確認してください。

タイム フィルターとレンジ フィルターでは、フィルターが定期的に調整される場合 (たとえば、経時的にアニメーション化する場合など)、フィルターはクエリされるデータ量をほとんど改善しないか、反対にクエリ リクエスト数を増加させることがあります。

サブタイプ グループ レイヤーおよびテーブル

サブタイプを含むジオデータベースまたはフィーチャ サービス データをs操作する場合、サブタイプ グループレイヤーまたはサブタイプ グループ テーブルを活用すると、データをより効率的にクエリできます。

サブタイプ グループ レイヤーは、サブタイプ レイヤーと呼ばれる複数のサブレイヤーを含むコンポジット フィーチャ レイヤーです。 これに関連し、サブタイプ グループ テーブルにはサブタイプ テーブルと呼ばれる複数のサブテーブルが含まれています。 各サブタイプ レイヤーまたはサブタイプ テーブルは、ソース データセットまたはサービス内の 1 つのサブタイプに対応します。 縮尺ベースの可視性やシンボルを制御したり、各サブタイプの属性テーブルを個別に表示したりすることができます。 サブタイプ グループ レイヤーは、マップに複数の個別レイヤーを追加するワークフローを置換するためのものです。

サブタイプ グループ レイヤーまたはテーブルをクエリすると、ArcGIS Pro はサブタイプ レイヤーのすべてのレイヤーのデータ ソースに対して単一のクエリを送信します。 このクエリ パターンは、マップ内に複数の個別レイヤーが存在する場合に行われるレイヤーごとのクエリよりも効率的です。

キャッシュ

データが ArcGIS Pro コンピューターにキャッシュされる場合は、データ ソースへのクエリは少なくなります。

レイヤー キャッシュ

ArcGIS Pro マップのすべてのフィーチャ レイヤーはレイヤー プロパティのキャッシュ オプションを使用してキャッシュできます。 データベース、エンタープライズ ジオデータベース、またはローカル フィーチャ レイヤーのデータの場合、この設定により、以前に開いた表示範囲を表示するために使用されるキャッシュが有効になります。

レイヤー キャッシュの利点

以前にキャッシュした範囲に再度アクセスする場合、画面上にデータをレンダリングするためにデータ ソースにクエリが送信されることはほとんどありません。 これは、データ表示のデータ リクエストを削減する際に役立ちます。 キャッシュは、データ アクセス リクエストを減らすために、可能であればエンタープライズ環境を使用します。

レイヤー キャッシュを使用する場合の注意事項

同じエリアの複数のユーザーによってデータが頻繁に更新される場合、変更が加えられた直後に、データ ユーザーがこれらの変更内容にアクセスする必要があります。 データのローカル キャッシュがある場合、他のユーザーが行ったデータの更新は ArcGIS Pro セッションに表示されません。 これを解消するために、キャッシュを頻繁に無効化する設定が用意されています。 あるいは、データの編集内容に即時にアクセスする必要がある場合は、キャッシュは使用しないこともできます。 これらのオプションを設定する方法の詳細については、「キャッシュ オプションの設定」をご参照ください。

フィーチャ キャッシュ

ArcGIS Pro で Web フィーチャ レイヤー (フィーチャ サービス) を表示する場合、レイヤー キャッシュに加えてローカル フィーチャ キャッシュを使用すると、データを取得するためのクエリ リクエストをさらに削減できます。

フィーチャ キャッシュは、さまざまな種類のデータ リクエストを満たすために ArcGIS Pro で使用されます。 デフォルトでは、パフォーマンスとスケーラビリティを向上するために、すべてのフィーチャ サービス レイヤーは自動的にキャッシュされます。 詳細については、「Web フィーチャ レイヤー (フィーチャ サービス) に対するキャッシュ オプション」と「フィーチャ キャッシュの条件」をご参照ください。

Web フィーチャ レイヤーでは、レイヤー キャッシュとは別にフィーチャ キャッシュを管理するための追加コントロールがあります。 これらの追加コントロールは、マップのレイヤーが前述のフィーチャ キャッシュの条件を満たさないシナリオで使用します。 フィーチャが期待どおりにキャッシュされるよう、フィーチャ キャッシュの条件を確認し、理解することが重要です。 これらのコントロールを使用してローカル キャッシュを作成すると、フィーチャ キャッシュの条件が満たされていない場合に、所定のワークフローに必要なクエリ数が大幅に削減されます。

フィーチャ キャッシュの利点

フィーチャ キャッシュを有効にすると、ArcGIS Server サイトに送信されるリクエスト数が大幅に削減されます。 ローカル キャッシュが作成されると、キャッシュされたエリアのほとんどのクエリに対して使用されます。

フィーチャ キャッシュを使用する場合の注意事項

同じ地理範囲を網羅するデータが複数のユーザーによって頻繁に更新される場合、データの編集が行われた直後に他のユーザーがアクセスする必要があります。 データのローカル キャッシュを使用する場合、ユーザーの既存の ArcGIS Pro セッション中は他のユーザーは更新を表示できません。 そのために、キャッシュを空にするか、フィーチャ キャッシュの自動入力を無効化します。

注意:

バージョン管理機能を有効にしたフィーチャ サービスは名前付きバージョンにアクセスします。 このバージョニング モデルでは複数の閲覧者が可能ですが、編集者は 1 人のみです。 つまり、複数のユーザーが名前付きバージョンのデータを同時に変更することはできません。 名前付きバージョンを操作する場合は、常にフィーチャ キャッシュを使用することをお勧めします。

その他の ArcGIS Pro 設定

以下の追加設定は、ソース データがクエリされる頻度に影響します。

マップの定義済みのズーム縮尺

マップのフィーチャ レイヤーを操作する場合、レイヤー キャッシュによってデータを ArcGIS Pro コンピューター上にキャッシュできるので、クエリはデータ ソースに送信されません。 データは表示範囲と現在のマップ縮尺に基づいてキャッシュされます。 独自のレイヤー キャッシュを作成するためにクエリをデータ ソースに送信する頻度を減らすには、マップ ユーザーが拡大または縮小したときに、データがマップで描画されるマップ縮尺を定義できます。

この設定を有効にすると、ArcGIS Pro は固定の拡大ボタンおよび縮小ボタン、マウスのホイール ボタン、またはキーボードのプラス (+) キーとマイナス (-) キーを使用した場合にのみ、事前定義された縮尺リストにズームします。

注意:

事前定義された縮尺は、連続ズームまたは四角形ズーム コマンドを使用する場合には使用されません。

プロジェクト ナビゲーション オプション

以下のプロジェクト設定は、マップまたはシーンのナビゲーション時に送信される ArcGIS クエリに影響を及ぼすことがあります。

  • [トランジション時間] - この設定は ArcGIS Pro が場所間の移動にかかる時間を制御します。 ブックマーク間のトランジションや過去にアクセスした範囲へのナビゲーションをアニメーション化し、2 つの異なる空間範囲間をナビゲーションする際に方向を維持するうえで役立ちます。 このアニメーション化には余分なデータ リクエストが必要なので、デフォルトでは無効になっています。
  • [画面移動ジェスチャの有効化] - この設定は、マップまたはシーンを画面移動する際、マウス ボタンを離したときにマウスが移動していた方向へのナビゲーション操作を補助します。 この設定を有効にすると (デフォルトでは有効)、マップまたはシーンはマップをドラッグした方向に緩やかに移動します。 これにより、マップが目的の位置を通り過ぎることがあります。 その場合、必要のない余分なデータがクエリされます。

これらのオプションについては「ナビゲーション オプション」をご参照ください。

アプリケーション設定

ArcGIS Pro をインストールするシステム管理者は、一部の設定を使用可能にしたり、非表示にしたり、ユーザー入力なしで事前に構成したりするために、アプリケーションの設定を変更できます。

Web フィーチャ レイヤーを消費する ArcGIS Pro インストールで有効にするべきそのようなオプションの 1 つとして、ManageFeatureCaching オプションがあります。 このオプションは ArcGIS Pro[マップ] タブにある [フィーチャ キャッシュ] グループを有効にするため、ユーザーが有効にする必要はありません。