Pages

Jumat, 23 November 2012

Pembuatan Normalisasi

Bentuk Normal Kedua (2NF) dan Bentuk Normal Ketiga (3NF)


Video 2 : Fatmawati (2011-53-102)
  
Video 1 : Riski Ulil A. (2011-53-090)
silahkan klik papaegood.blogspot.com
Video 3 : Susi Indah L. (2011-53-114)
silahkan buka di  indahsussy.blogspot.com
Video 4 : Aulia Mufshihah (2011-53-138)
tonton videonya auliamf.blogspot.com


A. PENGERTIAN NORMALISASI
Menurut E.F. Codd :
Normalisasi dipakai untuk membuat struktur table (relasi) dalam basis data mengurangi kemubadziran data . Kadang dipakai sebagai perangkat verifikasi terhadap table-tabel yang dihasilkan metodologi lain. Memberikan panduan yang sangat membantu bagi pengembang untuk mencegah penciptaan struktur table yang kurang atau mengurangi ketidak-efisienan.
Menurut Kroenke :
Sebagai proses untuk mengubah suatu relasi yang memiliki masalah tertentu kedalam dua buah relasi atau lebih yang tidak memiliki masalah tersebut anomali.
B. BENTUK NORMAL
Bentuk normal adalah suatu aturan yang dikenakan pada relasi-relasi dalam basis data dan harus dipenuhi oleh relasi-relasi tersebut dalam level-level normalisasi . Suatu relasi dikatakan berbeda dalam bentuk normal tertentu jika memenuhi kondisi-kondisi tertentu. Beberapa level yang biasa digunakan pada normalisasi adalah :
1.             Bentuk normal pertama (1NF)
2.            B entuk normal kedua (2NF)
3.            Bentuk normal ketiga (3NF)
4.            Bentuk normal Boyce-Cood (BCNF)
5.            Bentuk normal kekempat (4NF)
6.            B entuk normal kelima (5NF)
7.            Overnormalisasi
Berikut adalah penjelasan Bentuk Normal secara umum :
·                     Bentuk normal pertama hingga ketiga (dibuat oleh E.F Cood) merupakan bentuk normal yang umum dipakai . Artinya bahwa pad kebanyakan relasi , bila ketiga tersebut terpenuhi , maka persoalan anomaly tidak akan muncul lagi.
·                     Bentuk normal Boyce-Cood (BCNF) merupakan revisi dari bentuk normal ketiga.
·                     Setiap normalisasi bergantung pada level sebelumnya. Semakin dalam levelnya, relasi mempunyai kecenderungan lebih baik dalam artian memiliki problem yang lebih kecil ataupun samasekali tidak memiliki permasalahan anomali.


1. BENTUK NORMAL PERTAMA (1NF)
Bentuk normal pertama biasa dikenal pada table yang belum ternormalisasi . Tabel yang belum ternormalisasi adalah table yang memiliki atribut yang berulang. Suatu relasi dikatakan dalam bentuk normal pertama jika dan hanya jika setiap attribute bernilai tunggal untuk setiap baris.
Contoh I data yang belum ternormalisasi :





  •  
  • Contoh I Relasi yang memenuhi normal pertama :  








Contoh II Tabel yang belum ternormalisasi :




Tabel ini memiliki kelemahan, yaitu terdapat beberapa atribut yang belum memiliki data dan terdapat nama atribut yang berulang.
Contoh II Relasi yang memenuhi normal pertama :









Jika kita telaah lebih mendalam, tabel bentuk normal pertama tersebut memiliki 3 kelemahan mendasar, yaitu;

1.  Terjadi pengulangan informasi (duplikasi), pada baris data atributNo_Pesan, TGL_Pesan dan TOTAL. 
2. Potensi inkonsistensi data pada operasi pengubahan data, meskipun ketidakkonsistenan data bisa diatasi sangat memakan waktu untuk memperbaiki datanya.
3. Tersembunyinya informasi tertentu (isolasi data), misalnya ITEM yang dimiliki tidak hanya sampai P6, maka informasi lain yang mungkin tidak diketahui adalah harga setiap ITEM tersebut yang nantinya sangat berkaitan dengan TOTAL.
2. BENTUK NORMAL KEDUA (2NF)
Suatu relasi dalam bentuk normal kedua, jika dan hanya jika :
  1. Berada pada bentuk normal pertama
  2. Semua atribut yang bukan kunci memiliki dependensi sepenuhnya terhadap kunci primer.
Attribute yang bukan kunci adalah atribut yang bukan merupakan bagian dari kunci primer. Dalam ungkapan ang lebih praktis, bentuk normal yang kedua mensyaratkan setiap attribute bergantung kepada kunci primer. Untuk mengubah suatu relasi yang tergolong sebagai bentuk normal pertama kebentuk normal kedua perlu dilakukan dekomposisi terhadap relasi tersebut. Proses dekomposisi dapat dilakukan dngan menggambarkan diagram dependensi fungsional terlebih dahulu. Berdasarkan diagram ini, relasi dalam benttuk normal pertama dipecah kedalam sejumlah relasi.
Contoh I Relasi yang memenuhi normal pertama :






  
Pada bentuk normal kedua diharuskan adanya dekomposisi tabel jika terdapat atribut deskriptif yang tidak bergantung sepenuhnya pada kunci primer. Maka pada tabel Karyawan (NRP, NAMA, JABATAN, KEAHLIAN, LAMA) dapat diuraikan menjadi:
  • NAMA dan JABATAN memiliki dependensi fungsional terhadap NRP
  • LAMA mempunyai dependensi fungsional terhadap gabungan NRP dan KEAHLIAN.

Notasinya :
NRP {NAMA, JABATAN}
{NRP, KEAHLIAN}  LAMA  
Contoh I Hasil dekomposisi yang memenuhi bentuk normal kedua : 
Relasi NNJ


 


Relasi NKL










  • Menurut date : Normal pertama menjadi Normal Kedua terhadap relasi R :
R (A, B, C, D) Kunci primer (A, B), A  D
R dapat digantikan dengan dua proyeksi R1 dan R2 :
R1 (A, D) kunci primer (A)
R2 (A, B, C) kunci primer (A,B) dan kunci tamu (A) referensi R1
  • Masalah yang sering terjadi pada relasi yang tergolong pada bentuk normal kedua diakibatkan oleh adanya dependensi transitif. 

    3. BENTUK NORMAL KETIGA (3NF)
    Suatu relasi dikatakan dalam bentuk normalk ketiga (3NF) jika berada pada attribute bentuk normal ketiga dan semua atribut bukan kunci tidak memiliki transitif terhadap kunci primer.
    • Pendekatan normalisasi :
    Bila terdapat relasi R sebagai berikut :
    R (A, B, C) dengan kunci primer (A)
    B  C
    Maka relasi Rdapat digantikan dengan dua proyeksi R1 dan R2 :
    R1 (B, C) dengan kunci primer (B)
    R2 (A, B) dengan kunci primer (A) dan Kunci tamu (B) Referensi R1
    Relasi memenuhi Normal kedua tetapi tidak untuk Normal ketiga :









Dekomposisi yang menghasilkan relasi-relasi yang memenuhi bentuk normal ketiga:
  1. BENTUK NORMAL BOYCE-CODD (BCNF)
Suatu relasi disebut memenuhi bentuk normal Boyce-Codd (BCNF) jika dan hanya jika semua (determinan) adalah kunci kandidat (atribut yang bersifat unik). BCNF merupakan bentuk normal sebagian perbaikan terhadap 3NF,suatu relasi yang memenuhi BCNF selalu memenuhi 3NF, tetapi tidak untuk sebaliknya. Suatu relasi yang memenuhi 3NF belum tentu memenuhi BCNF .Dalam banyak literature disebutkan bahwa BCNF adalah perbaikan dari 3NF ,karena bentuk normal ketigapun mungkin masih mengandung anomaly sehingga masih perlu dinormalisasikan lebih lanjut.





  • Relasi diatas memenuhi 3NF tetapi tidak memenuhi BCNF, karena :
  1. Seorang siswa dapat mengambil sejumlah kursus bahasa
  2. Setiap tutor hanya mengajar pada sebuah kursus bahasa
  3. Setiap siswa pada setiap kursus bahasa hanya diajar oleh seorang tutor
  4. Suatu kursus bahasa yang sama bias memiliki lebih dari satu tutor
{Siswa, Kursus }  Tutor
{Siswa, Tutor }  Kursus
  • Cara mengkonfersi relasi yang telah memenuhi 3NF ke Boyce-Codd (BCNF) :
  1. Carilah semua penentu
  2. Bila terdapat penentu yang bukan berupa kunci kandidat, maka :
  • Pisahkan relasi tersebut dan buatlah penentu terdapat sebagai kunci primer.
Hasil dekomposisi baru :



  1. Dependensi Nilai Banyak dan Bentuk Normal Keempat / 4NF
Dependensi nilai banyak merupakan terjemahan dari multivalued dependency (MVD). Dependensi ini pertamakali diperkenalkan oleh R.Fagin pada tahun 1977 , dipakai pada bentuk normal ke empat (4NF) . Dependensi ini dipakai untuk menyatakan hubungan satu kebanyak.





Setelah dinormalisasi :






 
Secara umum , depenensi nilai banyak muncul pada relasi yang tidak memiliki tiga attribute dan dua diantaranya bernilai banyak dan nilai-nilainya terantung hanya pada atribut ketiga.
Pada suatu relasi R dengan atribut A, B, C atribut B dikatakan bersifat multidependen terhadap A jika :
  • Sekumpulan nilai B yng diberikan pada pasangan (A, C) hanya tergantung pada nilai A dan tidak terantung pada nilai C.
Hubungan diatas dinyatakan dengan A --->> B
Bila R (A, B, C) merupakan suatu relasi dengan A,B,C adalah attribute-attribute relasi tersebut , maka proyeksi dari R berupa (A,B) dan (A,C) jika R memenuhi MVD :
  • Perlu diketahui bila terdapat :
A --->> B
A --->> C
  • Maka keduanya dapat ditulis menjadi :
A --->> B | C
  • Secara praktis , suatu memenuhi bentuk normal keempat jika :
  • Telah berada pada BCNF dan tidak mengandung dua attribute / lebih yang bernilai banyak .
Hasil Dekomposisi baru :








  1. DEPENDENSI GABUNGAN DAN BENTUK NORMAL KELIMA (5NF)
Dependensi gabungan mendasari bentuk normal kelima. Dapat dikataan PJ/NF (Projection Join / Normal Form) atau 5NF adalah Jika dan hanya jika dependensi gabungan dalam R tersirat oleh kiunci kandidat relasi R.
Secara praktis, dapat dikatakan bahwa suatu relasi R berada dalam 5NF jika data yang ada padanya tidak dpat lagi didekomposisi menjadi relasi-relasi yang lebih kecil degan kunci kandidat relasi-relasi yang lebih kecil tidak sama dengan kunci kandidat relasi .
Suatu relasi R (X, Y,…, Z) memenuhi dependensi gabungan jika gabungan dari proyeksi A,B,…,C dengan A,B,..,C merupakan sub-himpunan dari atribut-atribut R. Dependensi gabungan sesuai definisi diatas dinyatakan dengan notasi :
* (A, B , . . ., C)  A=XY , B=YZ, C=XZ
NIM
Nama
Alamat
97788994
Abdullah
Jl.Pahlawan
97788995
Budi Setiawan
Jl.Merpati
97788996
Bella Safira
Jl.Merdeka
(NIM_Nama, Nama_Alamat, NIM_Alamat)
Kunci kandidat : kumpulan atribut minimal yang dapat membedakan setiap baris data dalam sebuah tbel secara unik dan tidak boleh berisi atribut / kumpulan atribut yang sudah menjadi superkey yang lain . berikut adalah kunci kandidat dari table diatas :
(NIM)
(Nama)
  1. OVERNORMALISASI
Merupakan table-tabel yang berada pada 5NF didekomposisikan lagi jika memungkinkan. Tujuannya dalah untuk meningkatkan kinerja . caranya adalah dengan memperhatikan permintan terhadap data yang sering dilakukan . Kolom-kolom data yang sering diperlukan, diletakkan pada table tersendiri , terpisah dengan kolom-kolom data yang jarang diperlukan.
Alasan yang lain , table yang terlalu banyak memiliki kolom dapat menimbulkan persoalan yang disebut deadlock (salng mengunci) pada pengaksesan yang serentak (sejumlah pengguna mengakses baris yang sama). Namun, perlu diperhatikan juga bahwa tidak selamanya pendekomposisian terhadap table yang memenuhi 5NF dapat menngkatkan keinerja.
Pada kenyataannya, table yang terlalu pendek(sedikit memiliki kolom) juga menimbulkan persoalan peningkatan waktu CPUdan juga memerlukan banyak I/O disk ketika penggabungan data (misalnya untuk penyajian laporan ).

Tidak ada komentar:

Posting Komentar