Apa itu Functional Dependency
Functional dependency biasanya dilambangkan dengan tanda panah "→". Functional dependency X pada Y diartikan sebagai X → Y. Mari kita pahami Functional dependency dalam DBMS dengan Contoh.
Contoh:
NoKaryawan | NamaKaryawan | Gaji | Alamat |
---|---|---|---|
A001 | Dena | 5000 | Bandung |
A002 | Sodikin | 7000 | Surabaya |
A003 | Andre | 6000 | Jakarta |
Dalam contoh di atas, jika kita tahu Nomor Karyawan, kita akan bisa mendapatkan Nama Karyawan, Gaji, Alamat. Dengan ini, kita dapat mengatakan bahwa nama, gaji, dan alamat secara fungsional tergantung pada nomor karyawan.
Key Terms (Istilah Kunci)
Key Terms | Deskripsi |
---|---|
Axiom | Axiom adalah seperangkat aturan inferensi yang digunakan untuk menyimpulkan semua dependensi fungsional pada database relasional. |
Decomposition | Ini adalah aturan yang menunjukkan jika kita memiliki tabel yang tampaknya berisi dua entitas yang ditentukan oleh kunci utama yang sama maka kita harus mempertimbangkan untuk memecahnya menjadi dua tabel yang berbeda. |
Dependent | Dependent biasanya ditampilkan di sisi kanan diagram Functional Dependency. |
Determinant | Sedangkan Determinant biasanya ditampilkan di sisi kanan diagram Functional Dependency. |
Union | Union menunjukkan bahwa jika dua tabel terpisah, dan Primary Key sama, kita harus mempertimbangkan untuk menempatkannya bersama. |
Aturan Functional Dependency
- Refleksif - Jika X adalah satu set atribut dan Y adalah sub set dari X, maka X → Y,
- Augmentasi - Ketika X → Y, dan Z adalah atribut set, maka XZ → YZ.
- Transitivitas - Aturan ini cukup mirip dengan aturan transitif. Jika X → Y dan Y → Z, maka X → Z.
Jenis Functional Dependency dalam DBMS
- Multivalued Dependency
- Trivial Functional Dependency
- non-Trivial Functional Dependency
- Transitive Dependency
Multivalued Dependency dalam DBMS
Contoh:
Car_model | Tahun_produksi | Warna |
---|---|---|
H001 | 2017 | Silver |
H001 | 2017 | Hijau |
H005 | 2018 | Silver |
H005 | 2018 | Biru |
H010 | 2015 | Silver |
H033 | 2012 | Merah |
Dalam tabel tersebut, Tahun_produksi dan warna independen satu sama lain tetapi masih ketergantungan dengan Car_model. Dalam contoh tersebut. kedua kolom ini dikatakan Multivalued Dependency terhadap Car_model.
Dependency ini dapat direpresentasikan seperti ini:
car_model → tahun_produksi
warna → car_model
Trivial Functional Dependency dalam DBMS
Trivial dependency adalah seperangkat atribut yang disebut trivial jika seperangkat atribut termasuk dalam atribut itu.
Jika, X → Y dikatakan Trivial functional dependency jika Y adalah subset dari X. Mari kita pahami lebih jelas lagi dengan contoh dibawah ini.
emp_id | emp_name |
---|---|
AS555 | Harry |
AS811 | Tanjung |
AS999 | Kelvin |
Kita lihat tabel tersebut memiliki dua kolom yaitu emp_id dan emp_name
{emp_id, emp_name} → emp_id adalah trivial functional dependency karena emp_id adalah subset dari {emp_id, emp_name}
non-Trivial Functional Dependency dalam DBMS
Contohnya adalah seperti dibawah ini.
perusahaan | CEO | Umur |
---|---|---|
Microsoft | Satya Nadella | 51 |
Sundar Pichai | 46 | |
Apple | Tim Cook | 57 |
Kita lihat tabel di atas {perusahaan} → {CEO} (Jika kita mengetahui Perusahaan, Maka kita juga tahu nama CEO)
Tetapi CEO bukanlah bagian dari Perusahaan, dan karena itu adalah non-Trivial Functional Dependency.
Transitive Dependency dalam DBMS
Transitive Dependency adalah jenis ketergantungan fungsional yang terjadi ketika secara tidak langsung dibentuk oleh dua dependensi fungsional. Mari kita pahami dengan contoh Transitive Depencency.
perusahaan | CEO | Umur |
---|---|---|
Microsoft | Satya Nadella | 51 |
Sundar Pichai | 46 | |
Alibaba | Jack Ma | 54 |
{perusahaan} → {CEO} (Jika tahu sebuah perusahaan, kita juga tahu nama CEO-nya)
{CEO} → {umur} (Jika kita tahu seorang CEO, maka kita juga tahu umurnya)
Oleh karena itu sesuai dengan aturan Transitive Dependency:
{perusahaan} → {umur} Itu masuk akal jika kita tahu nama dari sebuah perusahaan, kita juga bisa tahu umurnya.
Catatan: Kita perlu mengingat bahwa transitive dependency hanya dapat terjadi ketika dalam relasi memiliki tiga atau lebih atribut.
Apa itu Normalisasi?
Normalisasi sangat erat hubungannya dengan teori database relasional. Ini mungkin memiliki efek menduplikasi data yang sama dalam database yang dapat mengakibatkan pembuatan tabel tambahan.
Keuntungan dari Functional Dependency
- Functional Dependency dapat menghindari redudansi data. Oleh karena itu data yang sama tidak akan berulang di beberapa lokasi dalam database tersebut.
- Ini membantu kita untuk menjaga kualitas data dalam database.
- Ini dapat membantu kita untuk mengidentifikasi makna dan kendala dalam database.
- Juga dapat membantu kita untuk mengidentifikasi ketika desain yang telah kita buat terlihat bagus atau buruk.
- Ini dapat membantu kita menemukan keefektifan desain dalam database tersebut.
Posting Komentar untuk "Pengertian Functional Dependency dalam DBMS"