ビットマップインデックスとは
ビットマップインデックスは、特定の種類のデータ構造です。 コンピューターサイエンスでは、データ構造は、データを最も効率的な方法で利用するためにデータを整理および分類する方法です。 この特定のデータ構造を使用する利点は、特定の情報をより迅速に処理でき、必要なハードウェアメモリが少ないことです。 特に、ビットマップインデックスは、データウェアハウジングを扱うときによく使用されます。
「データウェアハウジング」の概念は、大量のデータを整理する方法を指します。 データを整理すると、さまざまな傾向やパターンを選別して選択できるため、データをよりよく理解できます。 これは、データがテーブルにソートされ、データ内の異なる値を表す数字で定義されることを意味します。 一般に、このタイプのデータインデックスは、定義されるデータに同じ値が繰り返し含まれない場合により効率的です。 一方、ビットマップインデックスは、値が繰り返される場合に最適に使用されます。
この種の繰り返しは、カーディナリティが低いデータとして説明できます。つまり、表示される情報の結果が非常に少ない場合です。 したがって、同じ値が複数回繰り返されます。 この一例は、値が男性と女性を定義している場合です。 性別を記述する方法は2種類しかないため、表の各列のカーディナリティは低く、ビットマップインデックスでの表示に最適です。
この種のデータをインデックスに表示すると、データをより迅速に読み取ることができますが、トレードオフがあります。 大幅に圧縮された構造により、読みやすくなりますが、同時にデータをCPUで複数回処理して、コンピューターが理解できる単純な用語に圧縮解除する必要があります。 さらに、ビットマップインデックスの変更には非常に時間がかかる場合があります。 すべてが非常に体系的で具体的であるため、変更する必要があるものの1つは、構造全体で変更を引き起こす可能性があります。
ビットマップインデックスのもう1つの利点は、メモリストレージがほとんど必要ないことです。 多くの場合、データベースインデックスにはデータ自体よりも多くのコンポーネントがあり、保存するために追加のスペースが必要です。 ビットマップインデックスを使用する場合、これは当てはまりません。 データを小さく、読みやすい部分に圧縮し、使用する必要のないスペースを解放します。