DEPENDENCY DAN NORMALISASI

Functional Dependency (ketergantungan fungsional) : menggambarkan hubungan, batasan, keterkaitan antara atribut-atribut dalam relasi. Suatu atribut dikatakan fuctional dependency pada yang lain jika kita menggunakan harga tersebut untuk menentukan harga atribut lain. Functional dependency digambarkan dengan tanda panah :
A dan B adalah atribut dari sebuah tabel. Berarti  secara  fungsional  A  menentukan  B atau B tergantung pada A, jika dan hanya jika ada 2 baris data dengan nilai A yang sama, maka nilai B juga sama.
Macam-macam Dependency :
  • Function Dependency
    • Full Dependency (ketergantungan penuh) 
    • Menunjukkan jika terdapat atribut A dan B
      dalam suatu relasi, dimana :
      ◦ B memiliki ketergantungan fungsional secara penuh pada A,
      ◦ B bukan memiliki dependensi terhadap subset A
                    Contoh :
{NIM, nama} -> idRuang  bukan Full Dependency jika nama dihilangkan, maka NIM -> idRuang bisa Full dependency
    • Partially Dependency (ketergantungan parsial) : B memiliki ketergantungan terhadap subset A. 
                    Contoh : terdapat sebuah tabel seperti dibawah ini
                              {NIM, Nama} --> idRuang merupakan partially dependency. Dimana jika salah 
                               satu atribut dihilangkan (Nama dihilangkan), maka ketergantungan masih tetap
                               ada.

    • Transitive Dependency : A menentukan B, B menentukan C. Jadi bisa dikatakan A menentukan C melalui B.
                    Contoh : terdapat sebuah tabel seperti dibawah ini

                           NIP --> kdCabang, kdCabang --> almCabang. Jadi NIP menentukan almCabang 
                           melalui kdCabang.
Normalisasi : adalah proses untuk mendapatkan struktur tabel atau relasi yang efisien dan bebas dari anomali. Sehingga sebagian ambiguitas dalam struktur data bisa dihilangkan.
Berikut ini ada beberapa alasan mengapa kita melakukan normalisasi :
  1. Optimalisasi struktur-struktur tabel
  2. Meningkatkan kecepatan
  3. Menghilangkan pemasukan data yang sama
  4. Lebih efisien dalam penggunaan media penyimpanan
  5. Mengurangi redudansi (penggandaan data)
  6. Mengindari anomali
  7. Integritas data yang ditingkatkan
Terdapat beberapa bentuk normalisasi yang biasa digunakan yaitu :
  1. First normal form (1NF)
  2. Second normal form (2NF)
  3. Third normal form (3NF)
  4. Boyce-codd normal form (BCNF)
  5. Four normal form (4NF)
  6. Five normal form (5NF)
Dari 6 bentuk normalisasi diatas, saya hanya akan menjelaskan poin 1 - 3. yang poin 4 - 6 insya alloh akan  saya jelaskan pada postingan berikutnya.

1NF (Bentuk normal Pertama)
adalah suatu keadaan yang membuat setiap perpotongan baris dan kolom dalam relasi hanya berisi satu nilai, atau tidak ada dua value dalam satu atribut.

2NF (Bentuk normal kedua)
Bentuk normal 2NF terpenuhi jika memenuhi 1NF, dan semua tribut selain primary key, secara utuh memiliki Functional Dependency pada primary key. Jika ada tribut yang tidak mempunyai ketergantungan pada primary key, maka dihapus.

3NF (Bentuk normal ketiga)
Bentuk normal 3NF terpenuhi jika memenuhi 2NF, dan juga tidak ada atribut non primary key yang tidak memiliki ketergantungan terhadap atribut non primary key yang lainnya ( ketergantungan transitif).

0 comments:

Post a Comment