Normalisasi
adalah sebuah proses untuk meng-efienkan struktur tabel agar tidak terjadi
anomali atau eror karena adanya ambiguitas. Dan perlunya dilakukan normalisasi
adalah untuk mengoptimalisasi struktur struktur tabel, meningkatkan kecepatan
proses, menghilangkan pemasukan data yang sama sehingga lebih efisien dalam
penggunaan media penyimpanan, mengurangi redunansi, menghindari anomali dan
meningkatkan integritas data.
Sedangakan
bentuk normalisasi yang biasa di gunakan yaitu:
1.
First normal form (1NF)
2.
Second normal form(2NF)
3.
Third normal form(3NF)
4.
Boyce-codd normal form(BCNF)
5.
Four normal form(4NF)
6.
Five normal form(5NF)
Sedangkan
langkah langkah untuk normalisasi digambarkan pada bagan berikut:
Sebelum saya menjelaskan lebih jauh
tentang bentuk bentuk normalisasai, saya akan menjelaskan mengenai
ketergantungan fungsional atau Function Dependency (FD). FD menggambarkan
hubungan atau relasi antara atribut-atribut dalam suatu relasi dan simbol FD
adalah è
dibaca secara fungsional menentukan. Contohnya yaitu AèB , secara
fungsional A menentukan B :
Macam-macam Fuction Dependency
yaitu:
- Full function dependency (ketergantungan penuh)
Yaitu
ketergantungan secara penuh terhadap primary key. Contoh : {NIM, Nama}èNilai_UAS
bukan full dependency, seharusnya NIMèNilai_UAS
ini disebut full dependency. Jadi ketergantungan secara penuh yaitu
ketergantungan hanya pada primary key bukan superkey.
- Partially dependency (ketergantungan parsial)
Merupakan
function dependency yang apabila sala satu atau lebih atribut dari A dapat
dihilangkan dengan ketergantungan tetap dipertahankan. Contoh : NIM, namaèNilai_UAS,
jika atribut nama di hilangkan maka ketergantungan tetap masih ada.
- Transitive dependency (Ketergantungan Transitif)
Merupakan
function dependency dimana X,Y,Z adalah atribut sebuah relasi yang mana XèY dan YèZ,
maka Z dikatakan sebagai transitive dependency terhadap X melalui Y. Contoh :
NIP è
{Nama, Jabatan, Gaji, kdCabang, AlmCabang}, kdCabangèAlmCabang.
Sedangkan penjelasan untuk bentuk-bentuk normalisasi
adalah sebagai berikut:
1.
1NF (Bentuk normal pertama)
Yaitu
suatu keadaan dimana setiap setiap field dalam tabel terisi semua dan tidak ada
set atribut yang berulang atau ganda. Untuk memermudah pemahaman lihatlah
contoh berikut :
1.
2NF (Bentuk normal kedua)
Dalam
suatu tabel bentuk normal kedua akan terpenuhi jika data telah memenuhi bentuk
1 NF dan semua atribut bergantung (Functional Depedency) pada primary key, jadi
dalam setiap tabel haruslah sudah di tentukan primary keynya. Apabila terdapat
atribut yang tidak sepenuhnya bergantung pada primary key maka atribut tersebut
haruslah dihilangkan atau dipindah (contoh No_klien pada tabel di bawah ini.)
Contoh
:
1. 3NF
(Bentuk Normal Ketiga )
Bentuk
normal ketiga terpenuhi jika telah memenuhi bentuk normal kedua dan tidak
adanya ketergantungan transitif yaitu
sifat ketergantungan yang terjadi antara atribut non primary key:
Boyee-Codd Normal Form (BCNF)
Hampir sama dengan
bentuk normal ketiga, hanya saja setiap atribut harus bergantung fungsi(functiondependency) pada atribut super key.
2.
4NF (Bentuk Normal Keempat)
Bentuk
normal yang telah memenuhi BCNF dan semua ketergantungan multivalue juga
termasuk ketergantungan fungsional.
3.
5NF (Bentuk Normal Kelima)
Bentuk
normal kelima disebut juga PJNF (Projection Join Normal Form), dilakukan dengan
menghilangkan ketergantungan join yang bukan merupakan primary key.