Normalization
Database Normalization
Proses mengorganisir tabel database untuk meminimalkan redundansi data dan mencegah anomali, menggunakan bentuk normal (1NF, 2NF, 3NF).
Normalization adalah teknik desain database yang membagi data ke dalam tabel-tabel yang lebih kecil dan terdefinisi dengan baik, menghilangkan redundansi dan ketergantungan data yang tidak perlu.
Tiga Bentuk Normal Utama
1NF (First Normal Form)
- Setiap sel berisi satu nilai atomic (tidak ada repeating groups)
- Setiap baris unik (ada primary key)
- Tidak ada kolom array atau nested
2NF (Second Normal Form)
- Memenuhi 1NF
- Setiap kolom non-key bergantung sepenuhnya pada seluruh primary key (bukan sebagian)
3NF (Third Normal Form)
- Memenuhi 2NF
- Tidak ada transitive dependency (kolom non-key bergantung pada kolom non-key lain)
Sebelum vs Sesudah Normalisasi
| Denormalized (masalah) | Normalized (solusi) |
|---|---|
| customer_name disimpan di setiap order | Tabel customers terpisah |
| Ganti nama customer = update ribuan baris | Ganti 1 baris di tabel customers |
| Risiko data tidak konsisten | Konsistensi terjaga |
Normalization vs Denormalization
- OLTP: Gunakan 3NF untuk integritas data
- OLAP/DWH: Denormalisasi untuk performa query analitik
Istilah Terkait
Schema
Database & StorageBlueprint atau struktur yang mendefinisikan organisasi database - mencakup tabel, kolom, tipe data, relasi, dan constraints.
Primary Key
Database & StorageKolom (atau kombinasi kolom) dalam tabel database yang secara unik mengidentifikasi setiap baris, tidak boleh NULL dan tidak boleh duplikat.
Index
Database & StorageStruktur data yang mempercepat operasi pencarian pada tabel database dengan membuat lookup cepat, mirip seperti indeks di buku.
Foreign Key
Database & StorageKolom dalam satu tabel yang mereferensikan Primary Key di tabel lain, membentuk hubungan antar tabel dan menjaga integritas referensial data.
Udah paham Normalization? Lanjut latihan SQL dan Excel yuk!
Latihan interaktif, langsung di browser.