NORMALISASI DATABASE

Posted On December 28, 2009

Filed under Uncategorized
Tags:

Comments Dropped leave a response

PENGERTIAN NORMALISASI PADA SEBUAH TABLE

Normalisasi adalah suatu proses untuk mengubah suatu tabel yang memiliki masalah tertentu ke dalam dua buah tabel atau lebih, yang tidak lagi memiliki masalah tersebut (Abdul Kadir, 2002: 52). Masalah tersebut biasanya merupakan suatu ketidakkonsistenan (tidak normal) apabila dilakukan penghapusan (delete), pengubahan (update) dan pembacaan (retrieve) pada suatu basis data.

Bentuk normalisasi adalah suatu aturan yang dikenakan pada tabel-tabel dalam basis data dan harus dipenuhi oleh tabel-tabel tersebut pada level-level normalisasi. Ada macam-macam bentuk normalisasi, diantaranya adalah bentuk tidak normal, bentuk normal pertama, bentuk normal kedua dan bentuk normal ketiga.

Aturan-aturan dalam masing-masing bentuk normalisasi tersebut adalah sebagai berikut (Abdul Kadir, 2002: 54) :

a. Bentuk tidak normal
Bentuk ini merupakan kumpulan data yang akan disimpan, tidak ada keharusan mengikuti suatu format tertentu, dapat saja data tidak lengkap atau terduplikasi dan data dikumpulkan apa adanya.

b. Bentuk normal pertama
Suatu tabel dikatakan dalam bentuk normal pertama (1NF) bila setiap kolom bernilai tunggal untuk setiap baris. Ini berarti bahwa nama kolom yang berulang cukup diwakili oleh sebuah nama kolom (tidak perlu ada indeks dalam memberi nama kolom).

c. Bentuk normal kedua
Suatu tabel berada dalam bentuk normal kedua (2NF) jika tabel berada dalam bentuk normal pertama, semua kolom bukan kunci primer tergantung sepenuhnya terhadap kunci primer. Suatu kolom disebut tergantung sepenuhnya terhadap kunci primer jika nilai pada suatu kolom selalu bernilai sama untuk suatu nilai kunci primer yang sama.

d. Bentuk normal ketiga
Suatu tabel berada dalam bentuk normal ketiga (3NF) jika tabel berada dalam bentuk normal kedua, setiap kolom bukan kunci primer tidak memiliki ketergantungan secara transitif terhadap kunci primer.

NORMALISASI DATABASE


Proses normalisasi adalah proses pernormalan suatu database yang disusun agar menghindari terjadinya redudancy (kemubaziran data).
Teknik Normalisasi adalah Cara untuk membangun/membikin suatu tabel database secara bertahap menjadi tabel database yang sesuai dengan karekteristik isinya.
berdasarkan informasi/bahan mentah hasil survei dan pengumpulan data dimana kita akan
membikin suatu aplikasi nantinya.


Dasar-dasar normalisasi :
1. Normal form (bentuk normal) adalah suatu klas dari skema database relasi yang
didefinisikan untuk memenuhi tujuan dari tingginya integritas dan maintainability
2. Kreasi dari suatu bentuk normal disebut normalisasi
3. Normalisasi dicapai dengan penganalisaan ketergantungan diantara setiap individu
atribut yang diassosiasikan dengan relasinya.
Perancangan melalui proses normalisasi mempunyai keuntungan-keuntungan sebagai berikut :
a. Meminimalkan ukuran penyimpanan yang diperlukan untuk penyimpanan data.
b. Meminimalkan resiko inkonsistensi data pada basis data.
c. Meminimalkan kemungkinan anomaly pembaruan.
d. Memaksimalkan stabilitas struktur data.
Tujuan proses normalisasi adalah mengkonversi relasi menjadi bentuk normal lebih tinggi. Terdapat beragam tingkat bentuk normal, yaitu :
a. Bentuk normal pertama (1NF)
b. Bentuk normal kedua (2NF)
c. Bentuk normal ketiga (3NF)
d. Bentuk normal Boyce-Codd (BCNF)
e. Bentuk normal keempat (4NF)
f. Bentuk normal kelima (5NF)
Keterangan bentuk normal :
– Bentuk normal pertama adalah ekivalen dengan definisi model relasional. Relasi
adalah bentuk normal pertama (1NF) jika semua nilai atributnya adalah sederhana
(bukan komposit).
– Bentuk normal kedua memiliki ketentuan harus telah berbentuk normal pertama (1NF),
dan semua atribut bukan utama harus bergantung fungsional penuh pada kunci relasi.
Relasi pada bentuk normal kedua harus tidak menyimpan fakta-fakta mengenai bagian
kunci relasi. Bentuk normal kedua menghilangkan kebergantungan parsial dan masih
memiliki anomali-anomali yang secara praktis tidak dapat diterima.
– Bentuk normal ketiga memiliki ketentuan harus telah berbentuk normal kedua (2NF)
dan relasi tidak boleh memuat kebergantungan fungsional di antara atribut-atribut
bukan utama.Bentuk normal ketiga menghilangkan kebergantungan transitif, awalnya
bentuk normal ketiga dipikir sebagai bentuk normal puncak/paling akhir. Namun
kemudian dapat ditemukan bentuk normal lebih kuat yaitu bentuk normal Boyce-Codd.
Bentuk Normal Boyce-Codd (BCNF) memiliki ketentuan yaitu masing-masing atribut
utama bergantung fungsional penuh pada masing-masing kunci dimana kunci tersebut
bukan bagiannya. Relasi adalah BCNF (optimal) jika setiap determinan atribut-
atribut relasi adalah kunci relasi. Relasi adalah BCNF (optimal) jika kapanpun
fakta-fakta disimpan mengenai beberapa atribut, maka atribut-atribut ini merupakan
satu kunci relasi. BCNF dapat memiliki lebih dari satu kunci. Properti penting
BCNF adalah relasi tidak memiliki informasi yang redundan.
– Bentuk Normal Keempat. Relasi dalam bentuk normal keempat (4NF) jika relasi dalam
BCNF dan tidak berisi kebergantungan banyak nilai. Untuk menghilangkan
kebergantungan banyak nilai dari satu relasi, kita membagi relasi menjadi dua
relasi baru. Masing – masing relasi berisi dua atribut yang mempunyai hubungan
banyak nilai.
– Bentuk Normal Kelima (5NF) berurusan dengan properti yang disebut join tanpa
adanya kehilangan informasi (lossless join). Bentuk normal kelima (5NF) juga
disebut PJNF (projection-join normal form). Kasus-kasus ini sangat jarang muncul
dan sulit untuk dideteksi secara praktis.
Pada proses perancangan database dapat dimulai dari dokumen dasar yang dipakai
dalam sistem sesuai dengan lingkup sistem yang akan dibuat rancangan databasenya. Contoh dokumen mengenai faktur pembelian barang pada PT. Revanda Jaya.
Tahapan Normalisasi Database pada PT. Revanda Jaya
1.Bentuk Unnormalisasi
Mencantumkan semua atribut dengan apa adanya :
Nomor_Faktur
Kode_Supplier
Nama_Supplier
Kode_Barang
Nama_Barang
Tanggal
Jatuh_Tempo
Quantity
Harga
Jumlah
2.Bentuk normal pertama (1NF)
Dengan bentuk normal pertama akan terbuat sebuah tabel yang terdiri dari 10 atribut, yaitu :
(No_Faktur, Kode_Supplier, Nama_Supplier, Kode_Barang, Nama_Barang, Tanggal, Jatuh_Tempo, Qty, Harga, Jumlah)
No_Fak : 779,998,998
Kode_Supplier : S02,G01,G01
Nama_Supplier : Hitachi,Gobel,Gobel
Kode_Barang : R02,A01,A02
Nama_Barang : Ricechoker C3,AC Split ½ PK,AC Split 1 PK
Tanggal : 02/02/01,07/02/01,07/02/01
Jatuh_Tempo : 09/03/01,09/03/01,09/03/01
Qty : 10,10,10
Harga : 15000000,13500000,20000000
Jumlah : 15000000,33500000,33500000
Pada bentuk normal pertama masih terdapat banyak kekurangan pada proses anomali, insert, update, dan delete. Pada proses Inserting/Penyisipan tidak bisa dengan memasukkan kode dan nama supplier saja tanpa adanya transaksi pembelian. Pada proses Delete/Penghapusan jika suatu record/data dihapus contohnya nomor faktur 779, maka berakibat pada penghapusan data supplier S02 (Hittchi) padahal data tersebut masih dibutuhkan. Pada proses Update/Pengubahan kode dan nama supplier ditulis berkali-kali, bila nama supplier berubah, maka disetiap baris yang ada harus dirubah, bila tidak menjadi tidak konsisten.
3.Bentuk normal kedua (2NF)
Bentuk normal kedua dengan melakukan dekomposisi relasi diatas menjadi beberapa relasi dan mencari kunci primer dari tiap-tiap relasi dan atribut kunci haruslah unik. Beberapa kunci kandidat adalah No_faktur, kode_supplier dan kode_barang. Kunci kandidat tersebut nantinya bisa menjadi kunci primer pada relasi hasil dekomposisi. Berdasarkan bentuk normal pertama dapat idekomposisikan menjadi tiga relasi beserta kunci primernya yaitu : relasi supplier (kode_supplier), relasi barang (kode_barang), dan relasi faktur (no_faktur).
Relasi Supplier
Kode_Supplier : S02,G01,G01
Nama_Supplier : Hitachi,Gobel Nustra
Relasi Barang
Kode_Barang :R02,A01,A02
Nama_Barang :Ricechocker C3,AC Split ½ PK,AC Split 1 PK
Harga :15.000.000,13.500.000,20.000.000
Kamus data dari masing-masing relasi diatas adalah :
Supplier = {Kode_Supplier,Nama_Supplier}
Barang = {Kode_Barang,Nama_Barang,Harga}
Faktur = {No_Faktur,Kode_Barang,Kode_Supplier,Tanggal,Jatuh_Tempo,Qty}
4.Bentuk normal ketiga (3NF)
Kamus data dari masing-masing relasi diatas adalah :
Supplier = {Kode_Supplier,Nama_Supplier}
Barang = {Kode_Barang,Nama_Barang,Harga}
Faktur = {No_Faktur, Kode_Supplier,Tanggal,Jatuh_Tempo}
Faktur_Barang ={ No_Faktur ,Kode_Barang,Qty}
5.Entity Relationship Diagram :
1.Supplier ke faktur relasinya adalah one to many karena satu supplier mempunyai
banyak faktur, dan faktur mempunyai relasi terhadap supplier.
2.Faktur ke transaksi barang relasinya adalah one to many karena satu faktur
mempunyai beberapa transaksi barang.
3.Barang ke transaksi_barang relasinya adalah one to many karena satu barang bisa
terjadi beberapa kali pembelian barang

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s