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用語: ORM(オブジェクトリレーショナルマッパー)とは|SQLを書かずにDBを操作
プログラミング言語のオブジェクトとDBのテーブルを対応付けるORMの仕組みとN+1問題を解説。
データベースマイグレーション
データベースのスキーマ(テーブル構造)変更をバージョン管理し、順序立てて適用する仕組み。Prisma Migrate・Flyway・Liquibaseが代表的なツール。
IT用語: シャーディングとは|大規模DBを水平分割してスケールアウトする手法
ユーザーIDや地域などのキーでデータを複数DBに分割するシャーディングの仕組みとデメリットを解説。
NoSQL(非リレーショナルデータベース)
固定スキーマを持たない非リレーショナル型データベースの総称。ドキュメント型・キーバリュー型・カラム型・グラフ型などがあり、水平スケーリングと柔軟なデータ構造が特徴。
IT用語: データベーストランザクションとは|ACID特性で保証するデータ整合性
DBの一連の操作をまとめて原子的に扱うトランザクションのACID特性(原子性・一貫性・独立性・持続性)を解説。
MySQL(マイSQL)
オープンソースのリレーショナルデータベース管理システム。WordPressをはじめ多くのWebアプリに採用され、読み取りパフォーマンスが高く導入が容易なRDBMSの定番。