スケーラブルデータベースサーバ HiRDB Version 8 システム運用ガイド(UNIX(R)用)

[目次][索引][前へ][次へ]

22.7 インデクスのチューニング

表を更新するとデータベースの整合性を維持するため,インデクスも更新されます。このため,インデクスを定義しているときは,次の内容に関して検討する必要があります。

検討事項
  • 表に定義したインデクスの数に比例して,インデクスの更新処理が発生し,SQLの処理時間が増加します。
  • インデクスが更新されると更新した情報がシステムログファイルに取得されます。このため,インデクスの数が増加するとシステムログファイルへの出力量も比例して増加します。
  • 更新したキー値を格納するためのインデクスページが不足すると,インデクスページスプリットが発生します。インデクスページスプリットが発生すると,インデクスページスプリットに関するシステムログが取得され,システムログファイルの量が増加します。

取得する情報
統計解析ユティリティの「インデクスに関する統計情報」を取得してください。
<この節の構成>
(1) スプリット回数(SP_NM)

(1) スプリット回数(SP_NM)

確認する目的
これらの情報は,インデクスの妥当性を判断するために取得します。通常,インデクスが原因で,性能が低下する要因には,次に示す要因が考えられます。
  • インデクス定義時に適切な空き領域(PCTFREE)が指定されていない場合,インデクスページスプリットが発生しています。
このため,インデクススプリット回数の情報で,インデクスの定義などを調節してください。

解析結果の妥当性を判断する方法
  1. インデクスページスプリットが発生している回数が多い場合は,表への操作として,挿入(INSERT)処理を主体とした業務で,インデクスが拡張されているためにインデクスページスプリットが発生していると考えられます。
  2. 表が分割されていて,特定のRDエリアに対するインデクスページスプリットが多い場合は,ある特定のキーレンジに更新が集中しているため,表の分割方法に問題があると考えられます。

対策方法
次に示すどれかの方法で対策してください。
  1. インデクス定義時に指定する未使用領域(PCTFREE)を大きくしてください。また,大量にデータを追加するときは,データベース作成ユティリティを使用してください。
  2. 不要なインデクスは削除してください。
  3. 表を分割している場合,インデクスページスプリットが集中しているキーレンジをさらに分割できるかどうか検討してください。