Rabu, 06 Maret 2013

Normalisasi Basis Data

Paper 5
Pendahuluan
          Ketikan merancang suatu basisdata untuk suatu sistem relational, prioritas utama dalam mengembangkan model data logical adalah dengan merancang suatu representasi data yang tepat bagi relationship dan constrainnya (batasannya). Kita harus mengidentifikasi suatu set relasi yang cocok , demi mencapai tujuan diatas. Tehnik yang dapat kita gunakan untuk membantu mengidentifikasi relasi-relasi tersebut di namakan Normalisasi
          Proses normalisasi pertama kali di perkenalkan oleh E. F. Codd pada 1972. Normalisasi sering dilakukan sebagai suatu relasi secara berkelanjutan untuk menentukan apakah relasi tersebut baik atau masih melanggar aturan-aturan standar yang diperlakukan pada suatu relasi yang normal (insert, update, delete dan modifikasi pada suatu atau beberapa atribut tanpa mempengaruhi integritas data dalam relasi tersebut).
          Proses normalisasi merupakan metode yang formal/ standar mengidentifikasi dasar relasi bagi primary key nya (atau candidate key dalam suatu kasus BCNF), dan dependensi fingsional diantara atribut-atribut dari relasi tersebut. Normalisasi akan membantu perancangan basisdata dengan menyediakan suatu uji coba yang berrurut yang dapat di implementasikan pada hubungan individual  sehingga skema relasi dapat di normalisasi kedalam bentuk yang lebih spesifik untuk menghindari terjadinya error atau inkonsistensi data, bila dilakukan update terhadap relasi tersebut  dengan Anomaly.
 
Landasan Teori
Definisi
Normalisasi adalah suatu teknik untuk mengorganisasikan data ke dalam tabel-tabel untuk memenuhi kebutuhan pemakasi di dalam suatu organisasi.
Tujuan Nomalisasi :
  • Untuk menghilangkan kerangkapan (Redudansi) data.
  • Untuk mengrangi kompleksitas
  • Untuk mempermudah pemodifikasian data
Proses Normalisasi :
  • Data diuraikan bentuk tabel, selanjutnya di analisis berdasarkan persyaratan tertentu ke beberapa tingkat
  • Apabila tabel yang di uji belum memenuhi persyaratan tertentu, maka tersebut perlu dipecah menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang optimal.
Tahapan Normalisasi :

Ketergantungan Fungsional :
Definisi : atribut Y pada relasi R dikatakan tergantung fungsional pada atribut X (R.X ==> R.Y), jika dan hanya setiap X relasi R mempunyai tepat satu nilai Y pada R
Misalnya  : terdapat skema database Pemasok barang :
  • Pemasok (Non-pem, Na-pem)
  • Tabel PEMASOK-BARANG
 Ketergantungan Fungsional dari tabel PEMASOK-BARANG adalah :
No-pem ==> Na-pem

Ketergantungan Fungsional penuh :
Definisi :
Atribut Y pada relasi R dikatakan terganrung fungsional penuh pada atribut X pada relasi R, jika Y tidak tergantung pada subset dari X (bila X adalah key gabungan).
Contohnya :
Tabel KIRIM-BARANG
(No-pem, Na-bar, Jumalah)

 

 Ketergantungan fungsional :
No-pem ==> Nama-pem
No-bar, No-pem ==> jumlah (tergatung penuh terhadap key nya)
Ketergantungan Transitif :
Definisi :
Atribut Z pada relasi dikatakan tergantung transitif pada atribut X, jika atribut Y tergantung pada atribut X pada relasi R dan atribut Z tergantung pada atribut Y pada relasi R, (X ==> Y, Y ==>Z, maka X==>Z)
Contohnya :


Ketergantungan Transitif :
  • No-pem ==> Kode-kota
  • Kode-kota ==> Kota, maka
  • No-pem==> Kota
Bentuk Normalisasi Kesatu (1NF) :
  • Suatu relasi dikatakan sudah memenuhi Bentuk Normal Kesatu biala setiap data bersifat atomik yaitu setiap irisan dan kolom hanya mempunyai satu nilai data.
  • Tabel KIRIM-1 (Unnormal)
  • Tabel  KIRIM-2 (1NF)
 
 
Bentuk Normal Kedua (2NF) :

  • Suatu relasi dikatakan sudah memenuhi Bentuk Normal Kedua bila relasi tersebut sudah memenuhi bentuk normal kesatu, dan atribut yang bukan key sudah tergantung penuh terhadap key nya.
  • Tabel PEMASOK-1 (2NF)
 
 
 

Bentuk Normal Ketiga (3NF) :
  • Suatu relasi sudah memenuhi Bentuk Normal Ketiga bila relasi tersebut sudah memenuhi bentuk normal kedua adan atribut yang bukan key tidak tergantung transitif terhadap key nya
  • Tabel KIRIM-3 (3NF)
  • Tabel PEMASOK-2 (3NF)
  • Tabel PEMASOK-3 (3NF)
 
 
 3.      Tabel PEMASOK-2 (3NF)
 
 
4.      Tabel PEMASOK-3 (3NF)