Dependency Dan Normalisasi

Functional Dependency adalah ketergantungan relasi suatu atribut dalam tabel terhadap atribut yang lainnya. 

Jenis - Jenis Dependency :
1.       Full Dependency
jika terdapat suatu atribut A dan B, dimana A mempunyai ketergantungan fungsional secara penuh pada B. Misalkan pada suatu tabel Mahasiswa yang memiliki atribut  NIM, Nama, Alamat.  Dikarenakan Nama tergantung pada NIM dan Alamat tergantung pada NIM, maka :
NIM à Nama dan NIM à Alamat

2.       Partially Dependency
Jika beberapa atribut dapat dihilangkan dari A dengan ketergantungan terhadap atribut B tetap dipertahankan. Misalkan pada suatu tabel Mahasiswa yang memiliki atribut  NIM, Nama, Ruang.  Dikarenakan Ruang memiliki ketergantungan terhadap NIM dan Nama, maka :
NIM, Nama  à Ruang (jika nama dihilangkan maka ketergantungan tetap ada)

3.       Transitive Dependency
Jika suatu kondisi dari atribut sebuah relasi dimana A à B dan B à C maka C disebut sebagai transitive dependency. Misalkan pada suatu tabel Pelanggan yang memiliki atribut  Id_Pelanggan, Nama, Salesman, Area.  Dikarenakan Nama, Salesman, Area memiliki ketergantungan terhadap Id_Pelanggan, sedangkan Area memiliki ketergantungan terhadap Salesman maka :
Id_Pelanggan à {Nama, Saleman, Area}
Salesman à Area

Normalisasi adalah sebuah teknik dalam basis data yang mengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik dan sebagian besar ambiguity bisa dihilangkan. 

Tujuan normalisasi adalah sebagai berikut :
1.       Untuk menghilangkan kerangkapan data
2.       Untuk mengurangi kompleksitas
3.       Untuk mempermudah pemodifikasian data

Beberapa bentuk normalisasi adalah sebagai berikut :
1.       Normal Pertama (1NF)
-          Tidak adanya atribut multi-value, atribut komposit ataupun kombinasinya.
-          Mendefinisikan atribut kunci.
-          Setiap atribut dalam tabel tersebut harus bernilai atomic(tidak dapat dibagi-bagi lagi)
2.       Normal Kedua (2NF)
-          Sudah memenuhi dalam bentuk normal pertama.
-          Semua atribut bukan kunci hanya boleh tergantung(functional dependency) pada atribut kunci.
-          Jika ada ketergantungan parsial maka atribut tersebut harus dipisah pada tabel yang lain.
-          Perlu ada tabel penghubung ataupun kehadiran foreign key bagi atribut-atribut yang telah dipisah tadi
3.       Normal Ketiga (3NF)
-          Sudah berada dalam bentuk normal kedua.
-          Tidak ada ketergantungan transitif

Komentar

Postingan populer dari blog ini

Materi Algoritma Pemrograman Kelas 8

Pengenalan Sistem Basis Data

Optimasi Query