Ketergantungan Fungsional dalam DBMS: Apa itu, Jenis dan Contoh

Daftar Isi:

Anonim

Apa itu Ketergantungan Fungsional?

Ketergantungan Fungsional (FD) adalah kendala yang menentukan hubungan satu atribut dengan atribut lainnya dalam Sistem Manajemen Basis Data (DBMS). Ketergantungan Fungsional membantu menjaga kualitas data dalam database. Ini memainkan peran penting untuk menemukan perbedaan antara desain database yang baik dan buruk.

Ketergantungan fungsional dilambangkan dengan panah "→". Ketergantungan fungsional X pada Y diwakili oleh X → Y. Mari kita pahami Ketergantungan Fungsional dalam DBMS dengan contoh.

Contoh:

Nomor pekerja nama karyawan Gaji Kota
1 Dana 50000 San Fransisco
2 Francis 38000 London
3 Andrew 25000 Tokyo

Dalam contoh ini, jika kita mengetahui nilai nomor Pegawai, kita dapat memperoleh Nama Pegawai, kota, gaji, dll. Dengan ini, kita dapat mengatakan bahwa kota, Nama Pegawai, dan gaji secara fungsional tergantung pada nomor Pegawai.

Dalam tutorial ini, Anda akan mempelajari:

  • Istilah kunci
  • Aturan Ketergantungan Fungsional
  • Jenis Dependensi Fungsional di DBMS
  • Dependensi multinilai di DBMS
  • Ketergantungan fungsional sepele di DBMS
  • Ketergantungan fungsional non sepele di DBMS
  • Ketergantungan transitif di DBMS
  • Apa itu Normalisasi?
  • Keuntungan Ketergantungan Fungsional

Istilah kunci

Berikut, beberapa istilah kunci untuk Ketergantungan Fungsional dalam Database:

Istilah Kunci Deskripsi
Aksioma Aksioma adalah sekumpulan aturan inferensi yang digunakan untuk menyimpulkan semua dependensi fungsional pada database relasional.
Penguraian Ini adalah aturan yang menyarankan jika Anda memiliki tabel yang tampaknya berisi dua entitas yang ditentukan oleh kunci utama yang sama, maka Anda harus mempertimbangkan untuk memecahnya menjadi dua tabel yang berbeda.
Tergantung Ini ditampilkan di sisi kanan diagram ketergantungan fungsional.
Determinan Itu ditampilkan di sisi kiri Diagram ketergantungan fungsional.
Persatuan Ini menyarankan bahwa jika dua tabel terpisah, dan PK-nya sama, Anda harus mempertimbangkan untuk meletakkannya. bersama

Aturan Ketergantungan Fungsional

Di bawah ini adalah Tiga aturan terpenting untuk Ketergantungan Fungsional dalam Database:

  • Aturan refleksif -. Jika X adalah himpunan atribut dan Y adalah subset dari X, maka X memiliki nilai Y.
  • Aturan augmentasi: Jika x -> y ditahan, dan c adalah set atribut, maka ac -> bc juga berlaku. Yaitu menambahkan atribut yang tidak mengubah dependensi dasar.
  • Aturan transitivitas: Aturan ini sangat mirip dengan aturan transitif dalam aljabar jika x -> y memegang dan y -> z memegang, maka x -> z juga berlaku. X -> y disebut sebagai fungsional yang menentukan y.

Jenis Dependensi Fungsional di DBMS

Terutama ada empat jenis Ketergantungan Fungsional di DBMS. Berikut adalah jenis-jenis Dependensi Fungsional di DBMS:

  • Ketergantungan Multinilai
  • Ketergantungan Fungsional Sepele
  • Ketergantungan Fungsional Non-Sepele
  • Ketergantungan Transitif

Ketergantungan Multinilai di DBMS

Ketergantungan multinilai terjadi dalam situasi di mana ada beberapa atribut multinilai independen dalam satu tabel. Dependensi multinilai adalah batasan lengkap antara dua set atribut dalam suatu relasi. Ini membutuhkan tupel tertentu untuk hadir dalam suatu relasi. Pertimbangkan Contoh Ketergantungan Multivalued berikut untuk memahami.

Contoh:

Model mobil Maf_year Warna
H001 2017 Metalik
H001 2017 hijau
H005 2018 Metalik
H005 2018 Biru
H010 2015 Metalik
H033 2012 Abu-abu

Dalam contoh ini, maf_year dan color tidak bergantung satu sama lain tetapi bergantung pada car_model. Dalam contoh ini, kedua kolom ini dikatakan sebagai multinilai yang bergantung pada model_model.

Ketergantungan ini dapat direpresentasikan seperti ini:

car_model -> maf_year

car_model-> color

Ketergantungan Fungsional Sepele di DBMS

Ketergantungan Trivial adalah sekumpulan atribut yang disebut trivial jika himpunan atribut disertakan dalam atribut itu.

Jadi, X -> Y adalah ketergantungan fungsional sepele jika Y adalah himpunan bagian dari X. Mari kita pahami dengan Contoh Ketergantungan Fungsional Sepele.

Sebagai contoh:

Emp_id Emp_name
AS555 Harry
AS811 George
AS999 Kevin

Pertimbangkan tabel ini dengan dua kolom Emp_id dan Emp_name.

{Emp_id, Emp_name} -> Emp_id adalah ketergantungan fungsional yang sepele karena Emp_id adalah bagian dari {Emp_id, Emp_name}.

Ketergantungan Fungsional Non-Sepele di DBMS

Ketergantungan fungsional yang juga dikenal sebagai ketergantungan nontrivial terjadi ketika A-> B berlaku dimana B bukan merupakan himpunan bagian dari A. Dalam suatu hubungan, jika atribut B bukan merupakan himpunan bagian dari atribut A, maka itu dianggap sebagai non-sepele ketergantungan.

Perusahaan CEO Usia
Microsoft Satya Nadella 51
Google Sundar Pichai 46
apel Tim Cook 57

Contoh:

(Perusahaan} -> {CEO} (jika kita mengenal Perusahaan, kita tahu nama CEO)

Tetapi CEO bukanlah bagian dari Perusahaan, dan karenanya merupakan ketergantungan fungsional yang tidak sepele.

Ketergantungan Transitif di DBMS

Ketergantungan Transitif adalah jenis ketergantungan fungsional yang terjadi ketika t secara tidak langsung dibentuk oleh dua ketergantungan fungsional. Mari kita pahami dengan Contoh Ketergantungan Transitif berikut.

Contoh:

Perusahaan CEO Usia
Microsoft Satya Nadella 51
Google Sundar Pichai 46
Alibaba Jack Ma 54

{Perusahaan} -> {CEO} (jika kita tahu perusahaan itu, kita tahu nama CEO-nya)

{CEO} -> {Age} Jika kita mengenal CEO, kita tahu Age

Oleh karena itu menurut aturan aturan ketergantungan transitif:

{Company} -> {Age} harus dipegang, itu masuk akal karena jika kita tahu nama perusahaannya, kita bisa tahu usianya.

Catatan: Anda perlu mengingat bahwa ketergantungan transitif hanya dapat terjadi dalam hubungan dengan tiga atribut atau lebih.

Apa itu Normalisasi?

Normalisasi adalah metode pengorganisasian data dalam database yang membantu Anda menghindari redundansi data, penyisipan, pembaruan & anomali penghapusan. Ini adalah proses menganalisis skema relasi berdasarkan dependensi fungsional dan kunci primernya yang berbeda.

Normalisasi melekat pada teori database relasional. Ini mungkin memiliki efek menduplikasi data yang sama dalam database yang dapat menghasilkan pembuatan tabel tambahan.

Keuntungan Ketergantungan Fungsional

  • Ketergantungan Fungsional menghindari redundansi data. Oleh karena itu, data yang sama tidak berulang di beberapa lokasi dalam database tersebut
  • Ini membantu Anda untuk menjaga kualitas data dalam database
  • Ini membantu Anda untuk mendefinisikan arti dan batasan database
  • Ini membantu Anda mengidentifikasi desain yang buruk
  • Ini membantu Anda menemukan fakta tentang desain database

Ringkasan

  • Ketergantungan Fungsional adalah ketika satu atribut menentukan atribut lain dalam sistem DBMS.
  • Aksioma, Dekomposisi, Ketergantungan, Determinan, Persatuan adalah istilah kunci untuk ketergantungan fungsional
  • Empat jenis ketergantungan fungsional adalah 1) Multinilai 2) Trivial 3) Non-sepele 4) Transitif
  • Ketergantungan multinilai terjadi dalam situasi di mana ada beberapa atribut multinilai independen dalam satu tabel
  • Ketergantungan Trivial terjadi ketika sekumpulan atribut yang disebut trivial jika himpunan atribut tersebut termasuk dalam atribut tersebut.
  • Ketergantungan nontrivial terjadi ketika A-> B berlaku di mana B bukan bagian dari A.
  • Transitif adalah jenis ketergantungan fungsional yang terjadi ketika secara tidak langsung dibentuk oleh dua dependensi fungsional
  • Normalisasi adalah metode pengorganisasian data dalam database yang membantu Anda menghindari redundansi data