ホーム > データベーススペシャリスト試験 > 2016年
データベーススペシャリスト試験 2016年 午前2 問08
第1正規形から第5正規形までの正規化に関する記述のうち, 適切なものはどれか。
ア:正規形にする分解は全て関数従属性が保存される。
イ:正規形にする分解は全て情報無損失の分解である。
ウ:第3正規形までは, 情報無損失でかつ関数従属性保存の分解ができる。(正解)
エ:第4正規形から第5正規形への分解は自明な多値従属性が保存される分解である。
解説
解説:第1正規形から第5正規形までの正規化と分解の性質
データベース設計における正規化は、データの冗長性を減らし、整合性を保つための重要な手法です。特に正規形(第1正規形から第5正規形まで)は、依存関係の整理とデータ構造の洗練を段階的に示しています。
正規化の基本的なポイント
-
情報無損失分解(Lossless Join Decomposition)
分解した関係から元の関係を正確に復元できること。つまり、分解によって情報が失われない。 -
関数従属性保存(Dependency Preservation)
分解した関係の集合に対して、元の関係の関数従属性(FD)がすべて確認できること。これが成り立たなければ、データ整合性の検証が難しくなる。
選択肢の解説
ア: 「正規形にする分解は全て関数従属性が保存される。」
これは誤りです。
- 第3正規形までは、多くの場合関数従属性保存の分解が可能ですが、高い正規形(BCNFなど)では、関数従属性が保存されないことがあります。
- BCNFでは、情報無損失で分解することはできても、必ずしも関数従属性が保存できるとは限りません。
イ: 「正規形にする分解は全て情報無損失の分解である。」
これも誤りです。
- 正規化の分解は一般的に情報無損失を目標としますが、実際には無損失分解にならない場合もあります。
- 特に高次の正規形への分解では、無損失分解が難しい場合があります。
- ただし、第1正規形から第3正規形までの標準的手法は無損失分解となる場合が多いです。
ウ: 「第3正規形までは、情報無損失でかつ関数従属性保存の分解ができる。」
適切な記述です。
- 第1正規形→第2正規形→第3正規形への分解は、一般に「情報無損失かつ関数従属性保存の分解」が可能とされています。
- これにより、データの復元性と整合性チェックの両方が保証されるため、第3正規形までの設計が基礎的かつ実用的である理由となっています。
エ: 「第4正規形から第5正規形への分解は自明な多値従属性が保存される分解である。」
これは誤りです。
- 第4正規形(4NF)は、多値従属性に着目した正規形で、4NFにより多値従属性が適切に扱われます。
- 第5正規形(5NF)は、さらに結合依存関係に基づく分解を扱います。
- 「自明な多値従属性」という表現は誤解を招きやすく、4NFと5NFの分解では必ずしも自明な多値従属性だけを保存するわけではありません。
まとめ
-
第3正規形までは情報無損失かつ関数従属性保存が可能
→ 選択肢「ウ」が正解。 -
その他の選択肢は、高次正規形での分解の性質や保存条件を誤解しているか、不正確な表現である。
参考文献
- 『データベース実践入門』(石田晴久)
- 『データベースシステム概論』(Abraham Silberschatz, Henry F. Korth et al.)
- 『データベース正規化の理論』(C. J. Date)
この理解を深めることで、データベース設計時に適切な正規化段階を設定し、冗長性の低減と整合性の維持を効果的に行えます。