Dependency itu sendiri mempunyai arti "Ketergantungan" dan Normalisasi adalah "Proses Menormalkan"
- Functional Dependency
Atau disebut juga dengan Ketergantungan Fungsional. Suatu atribut dikatakan Functionally Dependent jika menggunakan harga atribut untuk menentukan harga atribut yang lain.
Semisal notasi : A => B
A dan B adalah atribut dari sebuah tabel.
Dibaca, A secara fungsional menentukan nilai pada B atau B bergantung pada A.
Dibaca, A secara fungsional menentukan nilai pada B atau B bergantung pada A.
Example :
Ketergantungan fungsionalnya pada tabel Pemasok adalah ...
No_Pemasok => Nama_Pemasok
No_Pemasok => Nama_Pemasok
- Macam - Macam Dependency
Funnctional Dependency
- Full Functional Dependency
- Partially Dependency
- Transitive Dependency
1. Full Dependency (Ketergantungan Penuh)
Jika terdapatatribut A dan B suatu relasi, berarti :
- B memiliki ketergantungan fungsional penuh terhadap A
- B bukan memiliki dependensi terhadap A
Example:
Berarti, {NIM, nama} => idRuang bukan Full Dependency ,
tapi jika nama dihilangkan, maka NIM => idRuang bisa Full Dependency
2. Partially Dependency (Ketergantungan Parsial)
Dimana beberapa atribut dapat dihilangkan dari A dengan ketergantungan tetap dipertahankan.
NIM, nama => idRuang , dimana jika nama dihilankan maka ketergantungan tetap ada.
3. Transitive Dependency (Ketergantungan Transitif)
Dimana kondisi A,B,C adalah atribut sebuah relasi A=>B dan B=>C .Maka C dikatakan sebagai transitive dependency terhadap A melalui B.
Jika C=>A asal melalui B.
Jika C=>A asal melalui B.
Nip => {Nama, Jabatan, Gaji, KdCabang, AlmCabang}
KdCabang => AlmCabang
KdCabang => AlmCabang
- NORMALISASI
Merupakan suatu proses pembentukan struktur basis data sehingga sebagian besar ambiguity bisa dihilangkan.
# Alasan mengapa dilakukan normalisasi :
- Optimalisasi struktur-struktur tabel
- Optimalisasi struktur-struktur tabel
- Meningkatkan kecepatan
- Menghilangkan pemasukan data yang sama
- Lebih efisien dalam penggunaan media penyimpanan
- Mengurangi redundansi
- Menghindari anomali (insertion anomalies, deletion anomalies, update anomalies)
- Integritas data yang ditingkatkan
# Bentuk normalisasi yang digunakan :
- First normal form (INF)
- Second normal form (2NF)
- Third normal form (3NF)
- Boyce-codd normal form (BCNF)
- Four normal form (4NF)
- Five normal form (5NF)
# Langkah-Langkah Normalisasi :
1NF - Bentuk Normal Pertama
Suatu keadaan yang membuat setiap perpotongan baris dan kolom dalam relasi hanya berisi satu nilai.
Tidak diperbolehkan ada atribut yang bernilai banyak (Multivalued Attribut), dan attribut komposit atau kombinas keduanya.
Example :
UnNormalized Form (UNF)
Memenuhi 1NF
2NF - Bentuk Normal Kedua
Bentuk normal ini terpenuhi jika memenuhi bentuk 1NF, dan semua atribut selain primary key, secara utuh memiliki Functional Dependency pada Primary Key.
Dan sebuah tabel tidak memenuhi 2NF, jika ada atribut yang ketergantungan hanya bersifat parsial dari primary key.
Kemudian jika tidak memiliki ketergantungan pada primary key, maka atribut harus dipindah atau dihilangkan.
Example :
{No_peg, No_Klien} => {Nama_peg, Nama_Klien}
Kemudian dibagi lagi menjadi :
Dan antara No_peg dan No_klien digabung menjadi :
3NF - Bentuk Normal Ketiga
Terpenuhi jika :
- telah memenuhi bentuk 2NF
- tidak ada atribut non prmary key yang memiliki ketergantungan pada atribut non primary key yang lainya (ketergantungan transitif)
Example :
Tabel di atas memenuhi syarat 2NF tetapi tidak memenuhi 3NF
NIM => {NamaMhs, Jalan, Kota, Provinsi, KodePos}
KodePos => {Kota, Provinsi}
NIM => {NamaMhs, Jalan, KodePos} , sebagai Tabel Mahasiswa
KodePos => Provinsi, Kota , sebagai Tabel KodePos
TABEL MAHASISWA
TABEL KODE POS













0 komentar