Normalisasi

Normalisasi adalah proses pembentukan struktur basis data sehingga sebagian besar ambiguity bisa dihilangkan.


A. Tujuan Normalisasi

     1. untuk menghilangkan kerangkapan data.
     2. untuk menguramgi kompleksitas.
     3. untuk mempermudah permodifikasikan data.

B. Proses Normalisasi

  1. Data diuraikan dalam bnetuk tabel,selanjutnya di analisis     berdasarkan persyaratan tertentu ke beberapa tingkat.
  2. Apabila tabel yang diuji belum memenuhi persyaratan tertentu,maka tabel tersebut perlu dipecah menjadi beberapa tabel yang lebih sederhana sampai memenuhi bentuk yang optimal.

 C. Kriteria Tabel Efisien

     Sebuah tabel dikatakan baik atau normal jika memenuhi 3 kriteria,yaitu:
  1. Jika ada dekomposisi(penguraian)tabel,maka dekomposisinya harus dijamin aman.Artinya setelah tabel tersebut diuraikan menjadi tabel-tabel baru tersebut bisa menghasilkan tabel semula dengan sama persis.
  2. Terpelihara ketergantungan fungsional pada saat perubahan dara.
  3. Tidak melanggar Boyce-Code Normal Form
D. Tahapan Normalisasi
   
     * Bentuk Tidak Normal : Menghilangkan perulangan group.
     * Bentuk Norma Pertama(1NF) : Menghilangkan ketergantungan sebagian.
     * Bentuk Norma Kedua (2NF) : Menghilangkan ketergantungan Transitif.
     * Bentuk Norma Ketiga (3NF) : Menghilangka anomali hasil dari ketergantungan  fungsional.
     * Bentuk Boyce-Codd (BCNF) : Menghilangkan ketergantungan Multivalue.
     * Bentuk Norma Keempat (4NF) : Menghilangkan Ketergantungan anomali-anomali yang tersisa.
     * Bentuk Norma Kelima (5NF)

E. Ketergantungan Fungsional

Ketergantungan fungsional adalah Atribut Y pada relasi R dikatakan tergantung fungsional pada atribut X (R.X---> R.Y), jika dan hanya jika setiap nilai X pada relasi R mempunyai tepat satu nilai Y pada R.

          R = Relasi/tabel  dan  Y,X = Atribut didalam tabel R

        Contoh:
            


F. Ketergantungan Fungsional Penuh 

Ketergantungan Fungsional Penuh adalah Atribut pada relasi R dikatakan tergantung fungsional penuh pada atribut X pada relasi R,jika Y tidak tergantung pada subset dari X (bila x adalah key gabungan).
Suatu atribut Y mempunyai dependensi sepenuhnya terhadap atribut X jika :
* Y mempunyai dependesi terhadap X
* Y tidak mempunyai dependensi terhadap bagian dari X.
 
           Contoh:
  

G. Ketergantungan Transitif 

Ketergantungan Transitif adalah Atribut Z pada relasi R 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 )
       
Suatu atribut Z mempunyai dependensi transitif terhadap X jika :
* Y memiliki dependensi terhadap X dan
* Z memiliki dependensi trhadap Y
                                                                  X--> Z
                                                             X--> Y--> Z
                  
                   Contoh:
       

H. Problem Pada Dependensi Transitif
          
  1. Anomali Penyisipan : Seorang salesman baru yang bertugas dijateng tidak dapat dimasukkan dalam tabel sampai salesman tersebut mendapatkan seorang pelanggan.
  2. Anomali Penghapusan : Jika pelanggan A-001 dihapus,informasi bahwa Dian menangani daerah jabar ikut menghilang.
  3. Anomali peremajaan : Jika katakanlah Farkan Mendapat penugasan baru untuk menagani daerah kalimantan,maka sejumlah baris di remajakan agar data tetap konsisten.
I.  Tabel Universal 

Tabel Universal adalah sebuah tabel yang merangkum semua kelompok data yang saling berhubungan tabel yang baik.
              Contoh :

J. Bentuk-Bentuk Normal 

    1. Bentuk Normal Tahap Pertama (1st Normal Form / 1NF )
 
        * Bentuk normal 1NF terpenuhi jika sebuah tabel tidak memiliki atribut bernilai banyak,atribut composite atau kombinasinya dalam domain data yang sama.Setiap atribut dalam tabel tersebut harus bernilai atomatic.
                        
                       Contoh :
           
 
       2. Bentuk Normal Tahap Kedua ( 2nd Normal Form / 2NF )
           *Bentuk normal 2NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk 1NF, jika ada atribut selain primary key,secara utuh memiliki functional dependency pada primary.
           *Sebuah tabel tidak memenuhi 2NF, jika ada atribut yang ketergantungannya hanya bersifat persial saja.
           *Jika terdapat atribut yang tidak memiliki ketergantungan terhadap primary key,maka atribut tersebut harus dipindah atau dihilangkan.
                
             Contoh :
       3. Bentuk Normal Tahap ( 3rd Normal Form / 3NF )
           *Bentuk normal  3NF terpenuhi jika telah memenuhi bentuk 2NF,dan jika tidak ada atribut non primary key yang memiliki ketergantungan terhadap atribut non primary key yang lainnya.
           * Untuk setiap Functional Dependency dengan notasi X--> A,maka:
                - X harus menjadi superkey pada tabel tsb.
                - Atau A merupakan bagian dari primary key pada tabel tsb.
                  Contoh:

       4. Boyce-Code Normal Tahap ( BCNF )
            *Bentuk BCNF terpenuhi dalam sebuah tabel,jika untuk setiap functional dependency terhadap setiap atribut atau gabungan atribut dalam bentuk : X--> Y maka X adalah Super Key.
           *Tabel tersebut harus di-dekomposisi berdasarkan functional dependency yang ada,sehingga X mejadi super key dari tabel-tabel hasil dekomposisi.
           *Setiap tabel dalam BCNF merupakan 3NF,akan tetapi setiap 3NF belum tertentu termasuk BCNF.Perbedaannya,untuk functional dependency X--> A, BCNF tidak membolehkan A sebagai bagian dari primary key.
              Contoh:
       5. Bentuk Normal Tahap ( 4th Normal Form / 4NF )
           *Bentuk normal 4NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk BCNF, dan tabel tersebut tidak boleh memiliki lebih dari sebuah multivalued atribute.
           * Untuk setiap multivalued atribute (MVD) juga harus merupakan functional dependencies.

       6. Bentuk Normal Tahap ( 5th Normal Form / 5NF )
          *Bentuk normal 5NF terpenuhi jika tidak dapat memiliki sebuah lossless decompositin menjadi tabel-tabel yang lebih kecil.
          * jika 4 bentuk normal sebelumnya dibentuk berdasarkan functional dependency, 5NF dibentuk berdasarkan konsep join dependence.yakni apabila sebuah tabel telah di-dekomposisi menjadi tabel-tabel lebih lebih kecil,harus bisa digabungkan lagi(join) untuk membentuk tabel semula.

0 Response to "Normalisasi"

Post a Comment