ヒストグラム

ヒストグラムとは、インデックスを使用するかしないかを判断する統計分布要素、コストベース・オプティマイザ (CBO) によって中間セットの行数を予想し、アクセスパス、結合順序などを決定するためにも利用される。

平均的に分布している要素に対してはヒストグラムを取得すると逆効果(CBOの仕事が増える)
たとえ偏っていても検索キーなどに使用していないカラムには無用の長物となる。
Oracle で取り扱うヒストグラム統計情報は、高さ調整ヒストグラム、または、頻度ヒストグラムに変換される。

ヒストグラムでピークが一つのものを単峰性、複数あるものを多峰性という。
多峰性のヒストグラムになる場合には複数の単峰性のデータによる混成データである場合がある。
例えば、ある人物のテストの点数をヒストグラムにしたとき得意科目、不得意科目、平均的な科目などでピークが複数発生し多峰性のヒストグラムになっているが科目の層別ヒストグラムにすると単峰性になったりする。

頻度ヒストグラム

1 値 1 バケット(※1) に対応し、バケットの値が頻度情報になる。カーディナリティが低い場合(バケット数 >= 個別値)に使用される。

高さ調整ヒストグラム

高さ調整 ヒストグラムの例 ⇒ 参考 統計情報の収集 (DBMS_STATS)

高さ調整ヒストグラムにおいては1つのバケット(※1) に異なる値のデータが入っている。

(※1) バケット = Bucket = バケツ、つまり「容器/いれもの」のこと。



関連事項

関連 データ・ディクショナリ(一部)

日本オラクル
■ 日本オラクル 株式会社
■ オラクルマスター資格 (オラクルマスターとは
■ Oracle のライセンスがわからない…
Oracle Direct (ネットで聞いても最後はここで要確認)