Table of Contents
正規化と非正規化は、データベース設計でデータストレージと検索を最適化する技術です。これらの技術を適用する方法は、データベースのパフォーマンスとメンテナンス性を向上させることができます。
SQL の正規化
正規化は、冗長性と依存性を低下させるためにデータを整理することを含みます。 これは、通常、大きなテーブルを小さく、関連テーブルに分割することを含みます。 このプロセスは、データの整合性を維持し、更新を簡素化するのに役立ちます。
一般的な正規化フォームには、最初のノーマルフォーム(1NF)、第二ノーマルフォーム(2NF)、および第三ノーマルフォーム(3NF)が含まれます。 各フォームは、異常を排除し、効率的なデータ構造を確保するための特定のルールを課します。
正規化のための技術
- [] 主キーを使用します:[]]] 関係を確立するために、各テーブルに固有の識別子を割り当てます。
- 冗長データを限定:[ 別表に繰り返しデータを保存します。
- 外部キー:]]のリンク関連テーブルは、参照の完全性を維持します。
- 適用正規化規則:[]] 正規化フォームの手順に従って、データを適切に構造化します。
SQL の非正規化
異常化は、読み上げ性能を向上させるために、データベースに冗長性を意図的に導入することを含みます。 多くの場合、データウェアハウジングおよび報告のシナリオで使用され、迅速なデータ検索が不可欠です。
異常化はクエリを高速化できますが、データの更新とリスクデータの一貫性の複雑性を高める可能性があります。そのため、慎重に適用され、選択的にする必要があります。
異常化のための技術
- Combineテーブル:]] 参加操作を削減するための関連テーブルをマージします。
- []重複データ:[]]] 複数の場所で頻繁にアクセスされたデータのコピーを保存します。
- []サマリーテーブルを使う:] より高速なレポートのための集計テーブルを作成する。
- [] のイポジショニングトリガー:[]] 冗長データが更新されるとデータの一貫性を確保します。