順次 INSERT アクティビティーのための索引分割
Db2 は、順次挿入を検出し、索引ページを非対称的に分割してスペース使用量を改善し、分割処理を削減します。
索引ページに対して適切なページ・サイズを選択すると、パフォーマンスをさらに向上させることができます。
Db2 は、挿入中にリーフページ内のエントリーがすべて消費された場合、新しいページを割り当て、いくつかのエントリーを古いページから新しいページに移動します。 Db2 一連の挿入により、キーが昇順または降順で追加されることを検出します。
このようなパターンが検出されると、 Db2 はインデックスページを非対称に分割し、新たに割り当てられたページに、より多くのまたはより少ない数のキーを配置します。 このように、 Db2 はページスペースをより効率的に割り当て、分割処理の頻度を減らします。
従来、 Db2 は、インデックスページを分割するために、エントリーの約半分を新しいページに移動させていました。 そのロジックに従えば、 順次挿入によってキーが昇順に追加されると、古い索引ページで開放されたスペースが使用されることはありませんでした。 つまり、 索引は割り振られたページ・スペースの半分しか使用しませんでした。 新たに割り振られた各ページの使用可能な半分は、索引によって非常に速く一杯になるので、ページ分割が発生する頻度も大きくなっていました。
索引ページ・サイズを大きくすると、大量の挿入によって索引が高い頻度で分割される場合、有利になります。 索引分割の頻度は、SYSINDEXES および SYSINDEXPART カタログ表の LEAFNEAR、LEAFFAR、および NLEAF、パフォーマンス・トレースの、データ共用でのラッチ 70 (および統計のラッチ・クラス 6) 競合、および非データ共用でのラッチ 254 競合 (統計のラッチ・クラス 7) から判別できます。
索引ページ・サイズを小さくすると、ランダム読み取り集中型アプリケーションでのバッファー・プールのヒット率を高くする場合に有利です。