Normalisasi pada Database
A. Apa itu Normalisasi Database
Normalisasi dalam Database’. Normalisasi itu teknik untuk mengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik(tanpa adanya redudansi). Normalisasi dalam suatu database biasanya hanya mencapai N3(Normalisasi Ketiga), berikut adalah urutan Normalisasi :
1. N1(Normalisasi Pertama) Mempunyai aturan
· Mendefinisikan primary key
· Tidak ada grup yang berulang
· Semua non-primary key bergantung pada primary key
2. N2(Normalisasi Kedua) Mempunyai aturan
· Memenuhi aturan N1
· Tidak ada ketergantungan parsial
3. N3(Normalisasi Ketiga) Mempunyai aturan
· Memenuhi aturan N2
· Tidak ada ketergantungan transitif
Jumlah normalisasi seluruhnya ada 5(Lima) dimana 3 bentuk normal pertama menekankan redudansi yang muncul dari Function Dependencies sedangkan N4 dan N5 menekankan redudansi yang muncul dari kasus Multi Valued Dependencies.
B. Syarat perlunyya normalisasi:
· Fleksibilitas
Struktur database harus menunjang semua cara untuk menampilan data, sehingga ketika user menjalankan aplikasi dan meminta sesuatu dalam datbase, database harus dapat berjlan memenuhi permintaan user.
· Integritas data
Semua data dalam database yang berkaitan harus terhubung dalam suatu relationship. Sehingga ketika suatu data berubah,maka semua data yang berkaitan dengan data tersebut harus dapat berubah secara otomatis.
· Efficiency
Pada database, ukuran suatu database merupakan hal yang penting. Maka dalam database, kita harus mengurangi redudansi data yang bisa menyebabkan ukuran databse membengkak.
· Menghindari modification anomaly
Desain database yang baik menyajikan suatu keyakinan bahwa ketika user melakukan perubahan dalam database, maka tidak terjadi hal yang tidak diinginkan.
C. Berikut adalah cara singkat melakukan normalisasi :
1. Normalisasi Pertama a.k.a N1
Hilangkan duplikasi dengan mencari ketergantungan parsial
2. Normalisasi Kedua a.k.a N2
Field-field yang tergantung pada satu field harus dipisah dengan tepat
3. Normalisasi Ketiga a.k.a N3
Cari hubungan transitif (transitive relation) dimana field non key tergantung pada field non key lainnya
Tabel yang sudah mencapai N3 sudah siap untuk diimplementasikan dalam sebuah proyek, sebenarnya masih ada bentuk normalisasi yang lain yaitu Normalisasi Boyce-Codd dan N4. Jadi sebelum membuat suatu project normalisasikanlah database-mu.