スケーラブルデータベースサーバ HiRDB Version 8 解説(UNIX(R)用)

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

3.4.4 除外キー値

インデクスを定義した列のデータは,ナル値であってもすべてインデクスのキー値としてインデクス中に取り込まれます。インデクス中にナル値のキー値があっても意味がないため,むだなデータとなってしまいます。このような場合,すべての構成列の値がナル値で,キー値の重複が多いインデクスに対してナル値を除外キー値として指定できます。インデクスに除外キー値を設定すると,次に示す効果が期待できます。

期待できる効果
  1. インデクスには,ナル値のキーを作成しないため,インデクスの容量を削減できます。
  2. 行の挿入,削除及び更新時のインデクスメンテナンスのオーバヘッド(CPU時間,入出力回数,排他制御要求回数及びデッドロック発生頻度)とログ量を削減できます。
  3. ナル値を除外キー値とするインデクスの構成列に対する探索条件が,「IS NULL」だけの検索ではインデクスを使用しません。これによって,次に示す場合に検索性能が向上します。
    ・ナル値の重複が多い状態でインデクスを使用し,データページをランダムにアクセスしたため,同じページに入出力処理が発生していた場合

除外キー値の指定方法
定義系SQLのCREATE INDEXEXCEPT VALUESオプションを指定します。インデクスの除外キー値の詳細については,マニュアル「HiRDB Version 8 システム導入・設計ガイド」を参照してください。