メインコンテンツへスキップ
システムアーキテクト2018年度 春期午前I8

2018年度 春期 システムアーキテクト 午前I8

難度標準

関係データベースのテーブルにレコードを1件追加したところ、インデックスとして使う、図のB+木のリーフノードCがノード C1とC2に分割された。ノード分割後の B+木構造はどれか。ここで、矢印はノードへのポインタとする。また,中間ノードAには十分な空きがあるものとする。

選択肢

A -> B, C1, C2, D (C1 and C2 are split from C)
A -> B, C1, D, C2 (C1 and C2 are split from C)
A -> B, C1, D, C2 (C1 and C2 are split from C, but B and D are leaf nodes, C1 and C2 are leaf nodes)
A -> B, C1, D (C1 has C2 as child, C2 is leaf node, B and D are leaf nodes)

解説

結論 → 詳細 → 補足 の 3 層構成

展開
結論Layer 1

イが正解となるのは、B+木のノード分割の仕組みに基づいています。B+木では、リーフノードがいっぱいになると、そのノードは二つに分割されます。分割された片方のノードは元のノードの親ノードに、もう片方のノードはその親ノードの兄弟ノードとして追加されます。この際、親ノードのキーは分割されたノードのうち、新しいノードが持つ最小キーに更新されます。問題文でリーフノードCがC1とC2に分割され、中間ノードAには十分な空きがあるという条件から、Aは親ノードとして機能し、B、C1、D、C2が子ノードとして並ぶ構造が推測されます。

詳細Layer 2

アは、C1とC2が分割された結果としてAの直下に並ぶとしても、BとDの位置関係が明確でなく、B+木の構造として一般的ではありません。イは、B、C1、D、C2がAの子ノードとして並ぶ構造を示しており、C1とC2がCから分割された結果として、Aの直下の子ノードとして配置されていると解釈できます。ウは、BとDもリーフノードであると明記していますが、問題文の「中間ノードA」という記述と矛盾し、Aがリーフノードであるかのような誤解を招きます。エは、C1がC2を子に持つという構造を示していますが、これはリーフノードの分割という問題の状況とは異なり、中間ノードとリーフノードの関係を示唆しています。

この解説は?
この解説は AI 生成です(詳細)

解説テキストは Google Gemini に IPA 公式の問題文・公式解答を入力して生成しました。 人間によるレビューを行ったものと、未レビューのものが混在します。

AI は事実誤認・選択肢の取り違え・最新法令の反映漏れ等を含む可能性があります。 重要な判断は必ず IPA 公式 PDF または最新の参考書でご確認ください。

解説の検証プロセス・誤り報告フローは 運営透明性レポートで公開しています。

※ AI 生成の解説は誤りを含む可能性があります。重要な判断は IPA 公式資料でご確認ください。

最終更新:

分野「データベース」の学習ポイント

この問題の理解を「分野全体の力」に広げるための足がかり

何が問われるか
正規化・SQL・トランザクション特性(ACID)・同時実行制御・分散DBの基本。
学習の進め方
ER 図 ⇄ 関係スキーマ ⇄ SQL の3者を行き来できるよう演習。3NF までの正規化を手で実行できると強い。
関連キーワード
正規化SQLACIDトランザクションロックデッドロックER図
この分野の問題をもっと解く
AI コパイロット

この問題を AI と深掘りする

用語解説・選択肢分析・類題生成をその場で対話。クイズモードでは解答→解説がゼロ遷移。

クイズモードで開く

共有

X でシェアLINE

ショート動画

関連する問題

データベース の他の問題