このノードは複数の索引スキャンの結果の ANDing を表します。
ノード名: IXAND
意味: 動的ビットマップ技法を使用した複数の索引スキャンの結果の ANDing。
このノードは、基礎表へのアクセス数を最小限に削減するために、ANDing された述部を複数の索引に適用できるようにします。
このノードは以下の目的で実行されます。
- 基本表にアクセスする前に行のセットを絞り込むため。
- 複数の索引に適用される述部を ANDing するため。
- スター型結合で使用される半結合の結果を ANDing するため。
パフォーマンスに関する推奨事項: - 時間の経過とともに、データベースの更新が繰り返されることによって索引がフラグメント化され、必要以上の索引ページが作成されることがあります。
これは、索引を除去して再作成したり、索引を再編成したりすることにより、修正できます。
- 統計が最新ではなくなっている場合には、runstats コマンドを使用して更新してください。
- 一般に、索引スキャンは、条件を満たす行の数がわずかな場合に最も効率が高くなります。
条件を満たす行の数を見積もるために、オプティマイザーは、述部で参照される列に関して使用可能な統計を使用します。
ある値が他の値より頻繁に発生する場合、runstats コマンドに WITH DISTRIBUTION 節を使用して分散統計を要求する必要があります。
オプティマイザーは、非一様分散統計を使用することにより、発生頻度の高い値と低い値を区別できます。
- IXAND は、単一列索引を最大限に活用することができます。これは、IXAND を使用する際に開始キーおよび停止キーが重要となるためです。