IT用語: データベース正規化とは|データの重複をなくすテーブル設計の基本
第1〜第3正規形(1NF・2NF・3NF)を使いデータの冗長性を排除するデータベース正規化の手順を解説。
データベース正規化とは
データベース正規化は、リレーショナルデータベースの設計において、データの**冗長性(重複)と更新異常(矛盾)**をなくすためにテーブルを分割・整理する手順です。第1正規形〜第3正規形(1NF・2NF・3NF)が実務で最もよく使われます。
正規化の段階
非正規形(問題のある設計)
| 注文ID | 顧客名 | 顧客住所 | 商品1 | 金額1 | 商品2 | 金額2 |
|---|---|---|---|---|---|---|
| 001 | 田中 | 東京 | りんご | 100 | みかん | 80 |
第1正規形(1NF): 繰り返しグループを排除し、各列に1つの値のみ 第2正規形(2NF): 複合主キーの一部に対する関数従属を排除 第3正規形(3NF): 推移関数従属(非主キー→非主キー)を排除
正規化のメリット・デメリット
| メリット | デメリット |
|---|---|
| データ整合性の確保 | JOIN が増えてSQLが複雑に |
| ストレージ効率化 | クエリのパフォーマンス低下の可能性 |
| 更新・削除の安全性 | — |
非正規化(デノーマライズ)
パフォーマンスが重要なレポート系DBでは、意図的に正規化を崩してJOINを減らす「非正規化」が行われます。データウェアハウスのスタースキーマがその例です。
関連する用語 (データベース)
全23件を見るIT用語: MongoDBとは|JSONライクなドキュメント型NoSQLデータベース
スキーマレスなJSONドキュメントを格納するMongoDBの仕組み・集計パイプライン・RDBとの使い分けを解説。
PostgreSQL(ポストグレSQL)
オープンソースのリレーショナルデータベース。ACID準拠・豊富な機能・強力なSQL拡張・JSONサポートを持ち、企業向けから個人プロジェクトまで幅広く使われる高信頼性DBMSの代表格。
NoSQL(非リレーショナルデータベース)
固定スキーマを持たない非リレーショナル型データベースの総称。ドキュメント型・キーバリュー型・カラム型・グラフ型などがあり、水平スケーリングと柔軟なデータ構造が特徴。
ACID特性(トランザクション4要件)
データベーストランザクションの信頼性を保証する4つの特性。原子性(Atomicity)・一貫性(Consistency)・独立性(Isolation)・永続性(Durability)の頭文字をとった概念。
レプリケーション(データベース複製)
データベースのデータを複数のサーバーに自動的にコピーする仕組み。読み取り負荷の分散・障害時のフェイルオーバー・バックアップ目的で使われる。プライマリ/レプリカ構成が一般的。
SQL
リレーショナルデータベース(RDB)を操作・検索するための標準言語。