【データベース】インデックス検索の出発点!木構造の最上位「ルートノード」|情報処理問題1000本ノック
基本情報技術者試験や応用情報技術者試験のデータベース・データ構造分野で頻出の必須キーワード。B+木インデックスの構造と各ノード(ルート・中間・リーフ)の役割関係を攻略しましょう。
1. 【 問題 】:データベース系(インデックス・データ構造)
【 問題 】 リレーショナルデータベースのインデックスなどで利用されるB+木(木構造)に関する記述です。データの検索(探索)を行う際の起点となる、ツリー構造の最上位に位置する階層のノードは、次のうちどれか。
(ア)リーフノード(葉ノード)
(イ)ルートノード(根ノード)
(ウ)ブランチノード(中間ノード)
(エ)ペアレントノード(親ノード)
2. 正解:
正解:(イ)ルートノード(根ノード)
3. 解説:「木を『上下逆さま』にしてイメージするのがツリー構造!」
IT分野の木構造(ツリー構造)は、**「根(ルート)」が一番上にあり、下に向かって枝分かれし、末端に「葉(リーフ)」がある**逆さまの植物として描かれます。
データベースで目的のデータ(レコード)を探す際は、必ず最上位のルートノードから探索を開始し、値の大小を比較しながら分岐をたどっていきます。
| ノードの名称 | 階層での位置 | 役割・格納されている情報 |
|---|---|---|
| (イ)ルートノード (根ノード) |
最上位(頂点) | 探索の「スタート地点」。下位階層(子ノード)への分岐情報を持つ。 |
| (ウ)中間ノード (ブランチノード) |
ルートとリーフの間 | 探索経路をさらに絞り込むためのインデックス・ポインタ情報を保持。 |
| (ア)リーフノード (葉ノード) |
最下層(末端) | 実際の「インデックスキー値」と「実データ(テーブル行)への位置情報ポインタ」を保持。 |
1. 理解のコツ: 「本の目次」で例えてみましょう。
・ルートノード:一番最初の「大見出し(1章〜5章はこちら)」。
・中間ノード:「中見出し(2.1節〜2.3節はこちら)」。
・リーフノード:目的のページ番号が書かれた「末端の索引(実データへのポインタ)」です。
2. 試験対策の視点: データベースの性能チューニング(B+木インデックス)の根幹用語です。
問題文に「ツリー構造の最上位」「インデックスの起点/頂点」と出たらルートノード、「ツリー構造の最下層/末端」「実際のポインタ値を保持」と出たらリーフノードを選択しましょう!
4. まとめ
ツリー構造(木構造)データベースやインデックスにおいて、探索の起点となる最上位のノード。これがルートノード(根ノード)です。最下層の「リーフノード」との位置関係をしっかり対比してマスターしておきましょう!