平成21年度 秋期 ITパスポート試験 問63 解説 データの正規化
関係データベースを利用する際に, データの正規化を行う目的として, 適切なもの はどれか。
- 異機種のコンピュータ間の, データの互換性を保証する。
- データが重複したり, データ更新の際に矛盾が生じたりしないようにする。 ✓ 正答
- データベースをネットワークで利用する際に, 伝送上許されない文字を除去する。
- 複数の媒体にまたがるデータの格納領域を, 一つの連続した格納領域に見せかける。
解説
正規化というキーワードを見たら、まず「データの重複排除」と「更新時の不整合防止」という2つの単語をセットで連想してください。この問題は、正規化がなぜデータベース設計において不可欠なのか、その本質的な理由を問うています。
データの正規化とは何か
正規化とは、データベースを設計する際に、関連するデータを適切な単位でテーブルに分割していく作業のことです。
例えば、あるテーブルの中に「顧客名」と「注文情報」が一緒に入っているとします。このとき、同じ顧客が何度も注文するたびに「顧客名」のデータが重複して記録されます。もしその顧客が引っ越しをして住所が変わった場合、テーブル内のすべての該当箇所を書き換える必要があります。もし1箇所でも書き忘れれば、「Aさんの住所は今の住所」と「Aさんの住所は古い住所」というデータが混在し、情報の整合性が取れなくなってしまいます。
このような状況を防ぎ、データを効率よく、かつ正確に管理するためにテーブルを整理する手法が正規化です。
誤った選択肢を排除する思考プロセス
選択肢を検討する際、まず正規化の目的が「データの保持・管理の質」にあることを思い出しましょう。
- 異機種間の互換性に関する選択肢は、データ形式の変換やプロトコルの話であり、データベース内部の構造改善である正規化とは目的が異なります。
- ネットワーク伝送や文字コードに関する選択肢は、通信上の制約の話であり、データ構造を整える正規化の役割ではありません。
- 複数の媒体を一つに見せかけるという選択肢は、論理的なデータ構造の改善ではなく、物理的なストレージ管理(仮想化技術など)の話です。
このように、データそのものの「重複排除」と「更新異常の回避」というキーワードに該当するものが正解であると判断します。
データベース設計における正規化の重要性
正規化の概念を理解することは、単に試験に合格するだけでなく、実務で効率的なシステムを作るための基礎となります。
システム開発の現場では、データが重複していると、単にメモリやディスクを無駄遣いするだけでなく、前述した「更新時異常」という大きなリスクを抱えることになります。一度不整合が起きたデータは、どの情報が正しいのかを判別することが困難になり、システム全体の信頼性を損ないます。
ITパスポート試験では、正規化という用語を「データの整理術」として捉え、それが「情報の信頼性を守るための手段」であると理解しておくことが、本質的な正解への近道となります。