Functional Dependency
Menggambarkan hubungan, batasan, keterkaitan antara atribut-atribut dalam relasi.
Simbolny: -> dibaca secara fungsional menentukan.
contoh:
A->B = A secara fungsional menentukan B
A dan B merupakan atribut tabel.
Menggambarkan hubungan, batasan, keterkaitan antara atribut-atribut dalam relasi.
Simbolny: -> dibaca secara fungsional menentukan.
contoh:
A->B = A secara fungsional menentukan B
A dan B merupakan atribut tabel.
- NIM->Nama
Karena untuk setiap NIM yang sama maka Nama juga sama.
- {Matakuliah,NIM}->NilaiHuruf
Karena untuk menentukan NilaiHuruf tidak hanya membutuhkan NIM saja.
Macam Dependency:
- Full Functional
- Partial
- Transitive
- Full Functional
Menunjukkan jika terdapat atribut A dan B dimana
- B memiliki ketergantungan secara penuh pada A
- B bukan full dependency jika ada subset A
contoh:
{NIM,Nama}->id_ruang
- Partially Dependency
Merupakan ketergantungan fungsional dimana beberapa atribut dapat dihilangkan dari A dengan ketergantungan tetap dipertahankan.
> B memiliki dependency terhadap subset A.
contoh:
NIM,Nama-> id_ruang
Jika nama dihilangkan tetap terjadi ketergantungan atau id_ruang tetap bisa dipertahankan.
- Transitive Dependency
Merupakan tipe functional dependency yaitu kondisi dimana A,B,C adalah atribut sebuah relasi dimana A-> B dan B->C
Maka C diakatakan sebagai transitive dependency terhadap A melalui B.
Normalisasi
Merupakan suatu proses untuk mendapatkan struktur tabel atau relasi yang efisien dan bebas sari anomali dan mengacu pada cara data item dikelompokkan ke dalam struktur record.
Normalisasi adalah proses pembentukan struktur basis data sehingga sebagian besar ambiguitas bisa dihilangkan.
Mengapa dilakukan Optimalisasi?
- Optimalisasi struktur-struktur tabel
- Meningkatkan kecepatan
- Menghilangkan pemasukan data yang sama
- Lebih efisien dalam penggunaan media penyimpanan
- Mengurangi redundansi
- Menghindari anomali (onsertion anomalies, deletion anomalies, update anomalies)
- Integritas data yang ditingkatkan
Bentuk Normalisasi