Normalisasi database merupakan suatu
pendekatan sistematis untuk meminimalkan redundansi data pada suatu database
agar database tersebut dapat bekerja dengan optimal. Jika anda seorang database
administrator ketika terjadi sesuatu pada database seperti penurunan kinerja,
mungkin anda akan ditanya apakah database tersebut telah di normalisasi?
Tujuan Normalisasi Database
Tujuan normalisasi
database adalah untuk menghilangkan dan mengurangi redudansi data dan tujuan
yang kedua adalah memastikan dependensi data (Data berada pada tabel yang
tepat).
Jika data dalam
database tersebut belum di normalisasi maka akan terjadi 3 kemungkinan yang
akan merugikan sistem secara keseluruhan.
1.
INSERT Anomali : Situasi dimana tidak memungkinkan memasukkan
beberapa jenis data secara langsung di database.
2.
DELETE Anomali: Penghapusan data yang tidak sesuai dengan yang
diharapkan, artinya data yang harusnya tidak terhapus mungkin ikut terhapus.
3.
UPDATE Anomali: Situasi dimana nilai yang diubah menyebabkan
inkonsistensi database, dalam artian data yang diubah tidak sesuai dengan
yang diperintahkan atau yang diinginkan.
Normalisasi database terdiri dari banyak bentuk, dalam ilmu basis data ada
setidaknya 9 bentuk normalisasi yang ada
yaitu 1NF, 2NF, 3NF, EKNF, BCNF, 4NF, 5NF, DKNF,
dan 6NF. Namun dalam prakteknya dalam dunia industri bentuk normalisasi
ini yang paling sering digunakan ada sekitar 5 bentuk.
Normal Form
Data yang direkam dan
dimasukkan secara mentah dalam suatu tabel pada bentuk ini sangat mungkin
terjadi inkonsistensi dan anomali data
Contoh Normal Form
Normalisasi
Database Form
1. Normal Form (1NF)
Bentuk normal yang
pertama atau 1NF mensyaratkan beberapa kondisi dalam sebuah database, berikut
adalah fungsi dari bentuk normal pertama ini.
·
Menghilangkan duplikasi kolom dari tabel yang sama.
·
Buat tabel terpisah untuk masing-masing kelompok data terkait
dan mengidentifikasi setiap baris dengan kolom yang unik (primary key).
Contoh Normalisasi
Database 1NF
dari manual bon
pembelian diatas kita dapat menjadi bentuk normal pertama dengan
memisah-misahkan data pada atribut-atribut yang tepat dan bernilai atomik, juga
seluruh record / baris harus lengkap adanya.
2. Normal form (2NF)
Syarat untuk
menerapkan normalisasi bentuk kedua ini adalah data telah dibentuk dalam 1NF,
berikut adalah beberapa fungsi normalisasi 2NF.
·
Menghapus beberapa subset data yang ada pada tabel dan
menempatkan mereka pada tabel terpisah.
·
Menciptakan hubungan antara tabel baru dan tabel lama dengan
menciptakan foreign key.
·
Tidak ada atribut dalam tabel yang secara fungsional bergantung
pada candidate key tabel tersebut.
Contoh normalisasi
database bentuk 2NF
Bentuk normal kedua
dengan melakukan dekomposisi tabel diatas menjadi beberapa tabel dan mencari
kunci primer dari tiap-tiap tabel tersebut dan atribut kunci haruslah unik.
3. Normal Form (3NF)
Normalisasi database
dalam bentuk 3NF bertujuan untuk menghilangkan seluruh atribut atau field yang
tidak berhubungan dengan primary key. Dengan demikian tidak ada ketergantungan
transitif pada setiap kandidat key. Syarat dari bentuk normal ketiga atau 3NF
adalah :
·
Memenuhi semua persyaratan dari bentuk normal kedua.
·
Menghapus kolom yang tidak tergantung pada primary key.
Contoh Normalisasi
Database Bentuk 3NF
Bentuk normal ketiga
mempunyai syarat, setiap relasi tidak mempunyai atribut yang bergantung
transitif, harus bergantung penuh pada kunci utama dan harus memenuhi bentuk
normal kedua (2 NF).
BCNF Boyce–Codd normal form
Merupakan sebuah
teknik normalisasi database yang sering disebut 3.5NF, memiliki hubungan yang
sangat erat dengan bentuk 3NF. Pada dasarnya adalah untuk menghandle anomali
dan overlooping yang tidak dapat di handle dalam bentuk 3NF. Normalisasi
database bentuk ini tergantung dari kasus yang disediakan, tidak semua tabel
wajib di normalisasi dalam bentuk BCNF.
Komentar
Posting Komentar