DBエリアは,ページとセグメントという単位から構成されています。DBエリアの物理構造を次の図に示します。
図2-2 DBエリアの物理構造
このようにDBエリアは複数のセグメントから構成されています。セグメントは複数のページから構成されています。
セグメントは,表やインデクスのデータを格納するときの最小単位です。そのため,一つのセグメントに複数の表,または複数のインデクスを格納することはできません。セグメントと表,インデクスの関係を次の図に示します。
図2-3 セグメントと表,インデクスの関係
なお,セグメントには次の表に示す種類があります。
表2-2 セグメントの種類
項番 | セグメントの種類 | 説明 | 該当するDBエリアの種類 | |
---|---|---|---|---|
1 | 表 | 基本行用セグメント | 基本行用ページ※を割り当てるセグメントです。 |
|
2 | インデクス | 上位ページ用セグメント | 上位ページを割り当てるセグメントです。 |
|
3 | 下位ページ用セグメント | リーフページ,または行IDリストページを割り当てるセグメントです。 |
ページは,XDBが管理する領域の最小単位です。ページには次に示す三つの種類があります。
表データを格納するページです。
インデクスのキー値を格納するページです。インデクスページは上位ページ,下位ページ,行IDリストページに分類されます。
XDBのインデクスはB-tree構造になっています。B-tree構造中の最上位のインデクスページをルートページ,中間のインデクスページを中間ページ,最下位のインデクスページをリーフページといいます。上位ページとはルートページと中間ページのことで,下位ページとはリーフページのことです。
ルートページと中間ページには下段のページの情報が格納されています。また,リーフページには各インデクスのキー値とそのキー値に対応する行の格納位置が格納されています。
行IDリストページは,リーフページ中の特定のキー値が256以上重複した場合,そのキー値専用のページとして作成されます。用途はリーフページと同様で,キー値に対応する表中の行の格納位置を管理します。
DBエリアに関する管理情報を格納するページです。