Rabu, 28 November 2012

Dependency dan Normalisasi


Functional Dependency atau ketergantunga Fungsional
Keterkaitan antar atribut dimana terjadi penggunaan harga atribut untuk menentukan atribut yang lain.
Contoh :
X –> Y
dimana X dan Y merupakan sebuah atribut. Notasi diatas berarti fungsional X menentukan harga Y, atau Y bergantung pada X.


Contoh :
Tabel Mahasiswa

NIM
Nama_mhs
08091211
SYAHRUL
08091212
ROMDONI
08091213
AHMAD
08091214
ARIFIN
08091215
TEGUH
08091216
HARYONO


Ketergantungan Fungsional dari tabel Mahasiswa : NIM –> Nama_mhs

Functional Dependency memiliki 3 jenis antara lain sebagai berikut :
1. Full Dependency
Jika atribut Y bergantung secara penuh pada X. Terjadi jika terpenuhi syarat 1 atribute à 1 atribut.
contoh :
Kode_mk
Nama_mk
idRuang
Dosen
MKB001
MATEMATIKA
101
PULUNG
MKK001
LITERASI
102
SETYO
MKB002
FISIKA
103
HADI
MKK002
TEKNOLOGI
104
ARI
MKB003
BAHASA INGGRIS
105
SUPARDO
MKK003
ALGORITMA
106
SUGANDI



{Kode_mk, Nama_mk} –> idRuang bukan Full Dependency, bila Nama_mk dihilangkan maka Kode_mk –> idRuang bisa Full Dependency
2. Partially Dependency
Jika atribut Y bergantung terhadap subset X, namun apabila salah satu atribut dari X dihilangkan Y tetap bergantung kepada X.
contoh :






NIP
Nama_guru
Jk
Pendidikan
Thn_lulus
00111
PULUNG
L
S2
2003
00112
SETYO
L
S1
2004
00113
HADI
L
S1
2005
00114
ARI
L
S1
2006
00115
SUPARDO
L
S2
2001
00116
SUGANDI
L
S1
2008


{NIP, Pendidikan} –>Jk
Jk merupakan dependen terhadap NIP yang merupakan subset dari {NIP,Pendidikan}
3. Transitive Dependency
Jika terjadi kondisi dimana XàY dan Yà Z, maka dapat dikatakan bahwa Z merupakan transitive dependency terhadap X melalui Y.
Contoh :







Id_pegawai
Nama_Pegawai
Jabatan
Kode_cabang
Alamat
00211
AYU
Manager
01
Semarang
00212
DIAN
Supervisor
01
Semarang
00213
AHMAD
Medrep
01
Semarang
00214
YAKUB
Cleaning Service
01
Semarang
00215
KHOIRUL
Staff
01
Semarang
00216
DHANI
HRD
01
Semarang


id_pegawai –> {Nama_pegawai, Jabatan, Kode_cabang, Alamat}
KodeCabang –> Alamat
Normalisasi
Normalisasi merupakan suatu proses pengelompokan data yang dilakukan untuk membentuk struktur tabel agar mengurangi kemubaziran dan bebas anomaly sehingga mengurangi kebingungan atau ambigu.
Tujuan dilakukannya normalisasi adalah untuk mengoptimalisasi struktur-struktur tabel, meningkatkan kecepatan, menghilangkan inputan yang sama, penyimpanan lebih efisien, mengurangi adanya redundansi dan meningkatkan integritas data
Normalisasi memiliki 6 bentuk antara lain :
1. 1NF atau First normal form
Membuat baris dan kolom yang tadinya ada yang memiliki lebih dari satu nilai menjadi setiap baris dan kolom dalam relasi berisi satu nilai
2. 2NF atau Second normal form
Sebuah tabel yang telah berbentuk 1NF namun ada atribut yang tidak memiliki ketergantungan terhadap primary key atau ada atribut yang functional dependencynya hanya bergantung pada sebagian dari primary key, maka atribut akan dipisah berdasarkan primary key nya.
3. 3NF atau Third normal form
sebuah tabel telah berbentuk 2NF dan tidak adanya sebuah atribut non primary key yang bergantung pada atribut non primary  key yang lainnya / ketergantungan transitif
4. BCNF atau Boyce-code normal form
Sebuah tabel telah berbentuk 3NF dan adanya functional dependency terhadap masing-masing atribut atau keduanya/gabungan,
5. 4NF atau Four normal form
Sebuah tabel telah berbentuk BCNF, dan tabel tidak boleh mempunyai lebih dari satu buah multivalued atribut.
6. 5NF atau Five normal form
Sebuah tabel telah berbentuk 4NF dan tabel telah didekomposisi menjadi tabel-tabel yang kecil serta digabungkan kembali (join) untuk membentuk tabel semula.

Tidak ada komentar:

Posting Komentar