関係の正規化
データベースの正規化は、1970年代にエドガー・F・コッドによって導入されたデータベース設計のアプローチです。リレーショナル・データベースとして知られる特定のデータベースでは、データを別々のグループに格納することができます。各グループは一般的にテーブルと呼ばれています。有用な情報を提供するために、これらのグループは互いに接続されています。例えば、学生はあるグループに保存され、クラスは別のグループに保存されます。学生がクラスに在籍していることを示すために、あるグループから他のグループへの「関係」が確立されます。あるクラスには多くの学生が在籍しているのに対し、あるクラスには多くの学生が在籍しているという関係性を持つことができます。
伝統的な代替案としては、スプレッドシートのようにすべてのデータがまとめられている「フラットファイルデータベース」があります。フラットファイルデータベースの問題点は、空欄が多く、各エントリごとに繰り返さなければならない情報が多いことです。これは、データベースが必要以上に大きくなることを意味し、データベースに間違いが含まれる可能性が高くなることを意味します。リレーショナルデータベースは、データをグループに分割することで、ミスが起こる可能性を減らし、必要以上にスペースを取らないようにしています。しかし、それが機能するためには、それがうまく設計されている必要があります。
データベースの正規化は、良いリレーショナルデータベースを設計するための方法です。いくつかの「正規形」があり、それぞれにデータベースが満たすように設計されるべきルールがあります。Coddは元々、異なるデータベースが満たさなければならない基準として、第1、第2、第3の正規形の3つのセットを指定していました。
リレーション(または「データベーステーブル」)がある通常の形式を満たしていれば、データの整合性に影響を与えるような変更に対しては脆弱ではありません。このような基準を満たすことの欠点は、通常、データベースから特定のデータを問い合わせることがより困難になることです。
質問と回答
Q:データベースの正規化とは何ですか?
A: データベースの正規化とは、1970年代にEdgar F. Coddによって提唱されたデータベースを設計するための手法の一つです。データをテーブルと呼ばれる別々のグループに分割し、それらの間に有用な情報を提供するための関係を確立することが含まれます。
Q:フラットファイル・データベースとは何ですか?
A: フラットファイル・データベースは、すべてのデータがスプレッドシートのようにグループ化されているものです。そのため、空白や情報の繰り返しが多くなり、ミスが発生しやすくなります。
Q:リレーショナル・データベースは、どのようにしてミスが起こる可能性を減らすのですか?
A:リレーショナル・データベースは、データをグループに分けるので、間違いが起こる可能性を低くし、必要以上のスペースを取らないようにします。
Q:正規形とは何ですか?
A: 正規形とは、異なるデータベースが、うまく設計されたリレーショナル・データベースであるために満たさなければならない基準のことです。正規形にはいくつかの種類があり、それぞれにデータベースが満たすべき規則があります。
Q:ある種の基準を満たすことの欠点は何ですか?
A: そのような基準のセットを満たすことの欠点は、通常、データベースから特定のデータを照会することがより困難になることです。