DBMS'de Fonksiyonel Bağımlılık: Nedir, Türleri ve Örnekleri

İşlevsel Bağımlılık Nedir?

İşlevsel Bağımlılık (FD) Veri Tabanı Yönetim Sisteminde (DBMS) bir özelliğin başka bir özellik ile ilişkisini belirleyen bir kısıtlamadır. İşlevsel Bağımlılık, veritabanındaki verilerin kalitesinin korunmasına yardımcı olur. İyi ve kötü veritabanı tasarımı arasındaki farkı bulmak hayati bir rol oynar.

İşlevsel bir bağımlılık “→” okuyla gösterilir. X'in Y'ye işlevsel bağımlılığı X → Y ile temsil edilir. DBMS'deki İşlevsel Bağımlılığı örnekle anlayalım.

Örnek:

Çalışan sayısı İşçi adı Maaş Şehir
1 Dana 50000 San Francisco
2 Francis 38000 Londra
3 Andrew 25000 Tokyo

Bu örnekte Çalışan numarasının değerini biliyorsak Çalışan Adı, şehir, maaş vb. bilgileri elde edebiliriz. Böylece şehrin, Çalışan Adının ve maaşın işlevsel olarak Çalışan sayısına bağlı olduğunu söyleyebiliriz.

Anahtar terimler

Veritabanındaki İşlevsel Bağımlılık için bazı temel terimler şunlardır:

Anahtar terimler Açıklama
Aksiyom Aksiyomlar, ilişkisel bir veritabanındaki tüm işlevsel bağımlılıkları ortaya çıkarmak için kullanılan bir dizi çıkarım kuralıdır.
ayrışma Bu, aynı birincil anahtar tarafından belirlenen iki varlığı içeriyor gibi görünen bir tablonuz varsa, bunları iki farklı tabloya ayırmayı düşünmeniz gerektiğini öneren bir kuraldır.
Bağımlı Üzerinde görüntülenir işlevsel bağımlılık diyagramının sağ tarafı.
determinant İşlevsel bağımlılık Diyagramının sol tarafında görüntülenir.
sendika Bu, iki tablo ayrıysa ve PK aynıysa bunları yerleştirmeyi düşünmeniz gerektiğini önerir. birlikte

İşlevsel Bağımlılık Kuralları

Veritabanında İşlevsel Bağımlılık için en önemli üç kural aşağıda verilmiştir:

  • Dönüşlü kural –. X bir nitelikler kümesiyse ve Y, X'in_altkümesiyse, bu durumda X, Y değerini tutar.
  • Büyütme kuralı: x -> y geçerli olduğunda ve c öznitelik kümesi olduğunda, ac -> bc de geçerli olur. Bu, temel bağımlılıkları değiştirmeyen niteliklerin eklenmesidir.
  • Geçişlilik kuralı: Bu kural cebirdeki geçiş kuralına çok benzer, eğer x -> y geçerliyse ve y -> z geçerliyse, o zaman x -> z de geçerliyse. Fonksiyonel olarak y'yi belirleyen X -> y olarak adlandırılır.

DBMS'deki İşlevsel Bağımlılık Türleri

DBMS'de esas olarak dört tür İşlevsel Bağımlılık vardır. DBMS'deki İşlevsel Bağımlılık türleri şunlardır:

  • Çok Değerli Bağımlılık
  • Önemsiz İşlevsel Bağımlılık
  • Önemsiz Olmayan İşlevsel Bağımlılık
  • Geçişli Bağımlılık

DBMS'de Çok Değerli Bağımlılık

Çok değerli bağımlılık, tek bir tabloda birden fazla bağımsız çok değerli öznitelik bulunduğu durumda ortaya çıkar. Çok değerli bağımlılık, bir ilişkideki iki öznitelik kümesi arasındaki tam bir kısıtlamadır. Bir ilişkide belirli tuple'ların bulunmasını gerektirir. Anlamak için aşağıdaki Çok Değerli Bağımlılık Örneğini inceleyin.

Örnek:

Araba modeli Maf_yılı Renk
H001 2017 madeni
H001 2017 Yeşil
H005 2018 madeni
H005 2018 Mavi
H010 2015 madeni
H033 2012 Gri

Bu örnekte maf_year ve color birbirinden bağımsızdır ancak car_model'e bağlıdır. Bu örnekte bu iki sütunun car_model'e bağlı çoklu değere sahip olduğu söyleniyor.

Bu bağımlılık şu şekilde temsil edilebilir:

car_model -> maf_year

araba_modeli-> renk

DBMS'de Önemsiz İşlevsel Bağımlılık

Önemsiz bağımlılık, öznitelik kümesinin o özniteliğe dahil edilmesi durumunda önemsiz olarak adlandırılan bir öznitelik kümesidir.

Yani, eğer Y, X'in bir alt kümesiyse, X -> Y önemsiz bir işlevsel bağımlılıktır. Önemsiz İşlevsel Bağımlılık Örneğiyle anlayalım.

Örneğin:

Emp_id Emp_name
AS555 Harry
AS811 George
AS999 Kevin

Emp_id ve Emp_name olmak üzere iki sütun içeren bu tabloyu düşünün.

{Emp_id, Emp_name} -> Emp_id, Emp_id'nin {Emp_id,Emp_name} alt kümesi olması nedeniyle önemsiz bir işlevsel bağımlılıktır.

DBMS'de Önemsiz Olmayan İşlevsel Bağımlılık

Önemsiz olmayan bağımlılık olarak da bilinen işlevsel bağımlılık, B'nin A'nın bir alt kümesi olmadığı durumlarda A->B doğru olduğunda ortaya çıkar. Bir ilişkide, B özelliği, A özelliğinin bir alt kümesi değilse, o zaman önemsiz olmayan bir bağımlılık olarak kabul edilir. bağımlılık.

Firmamız CEO Yaş
Microsoft Satya Nadella 51
Google Sundar Pichai 46
Apple Tim Cook, 57

Örnek:

(Şirket} -> {CEO} (Şirketi tanıyorsak CEO'nun adını da biliriz)

Ancak CEO, Şirketin bir alt kümesi değildir ve dolayısıyla önemsiz olmayan bir işlevsel bağımlılıktır.

DBMS'de Geçişli Bağımlılık

Geçişli Bağımlılık, "t"nin iki işlevsel bağımlılık tarafından dolaylı olarak oluşturulmasıyla oluşan bir tür işlevsel bağımlılıktır. Aşağıdaki Geçişli Bağımlılık Örneği ile anlayalım.

Örnek:

Firmamız CEO Yaş
Microsoft Satya Nadella 51
Google Sundar Pichai 46
Alibaba Jack Ma 54

{Şirket} -> {CEO} (şirketi biliyorsak CEO'sunun adını da biliyoruz)

{CEO } -> {Yaş} CEO'yu tanıyorsak Yaşını da biliyoruz

Bu nedenle geçişli bağımlılık kuralına göre:

{Şirket} -> {Yaş} geçerli olmalı, bu mantıklı çünkü şirketin adını biliyorsak yaşını da bilebiliriz.

Not: Geçişli bağımlılığın yalnızca üç veya daha fazla özelliğin ilişkisinde ortaya çıkabileceğini unutmamanız gerekir.

Normalleşme nedir?

Normalleştirme, veri fazlalığından, ekleme, güncelleme ve silme anormalliklerinden kaçınmanıza yardımcı olan, veritabanındaki verileri düzenleme yöntemidir. İlişki şemalarının farklı işlevsel bağımlılıklarına ve birincil anahtarlarına göre analiz edilmesi sürecidir.

Normalleştirme ilişkisel veritabanı teorisinin doğasında vardır. Veritabanında aynı verilerin kopyalanması etkisine sahip olabilir ve bu da ek tabloların oluşturulmasına neden olabilir.

Fonksiyonel Bağımlılığın Avantajları

  • İşlevsel Bağımlılık veri fazlalığını önler. Bu nedenle aynı veriler o bölgedeki birden fazla yerde tekrarlanmaz. veritabanı
  • Veritabanındaki verilerin kalitesini korumanıza yardımcı olur
  • Veritabanlarının anlamlarını ve kısıtlamalarını tanımlamanıza yardımcı olur
  • Kötü tasarımları tanımlamanıza yardımcı olur
  • Veritabanı tasarımıyla ilgili gerçekleri bulmanıza yardımcı olur

ÖZET

  • İşlevsel Bağımlılık, bir özelliğin bir yapıdaki başka bir özelliği belirlemesidir. DBMS sistemi.
  • Aksiyom, Ayrıştırma, Bağımlı, Belirleyici, Birlik fonksiyonel bağımlılık için anahtar terimlerdir
  • Dört tür işlevsel bağımlılık vardır: 1) Çok değerli 2) Önemsiz 3) Önemsiz olmayan 4) Geçişli
  • Çok değerli bağımlılık, tek bir tabloda birden fazla bağımsız çok değerli özelliğin olduğu durumda ortaya çıkar
  • Önemsiz bağımlılık, bir öznitelik kümesinin o özniteliğe dahil edilmesi durumunda önemsiz olarak adlandırılan bir öznitelik kümesi oluştuğunda ortaya çıkar.
  • Önemsiz olmayan bağımlılık, B'nin A'nın bir alt kümesi olmadığı durumlarda A->B doğru olduğunda ortaya çıkar
  • Geçişli, dolaylı olarak iki işlevsel bağımlılık tarafından oluştuğunda ortaya çıkan bir tür işlevsel bağımlılıktır.
  • Normalleştirme, veri fazlalığından kaçınmanıza yardımcı olan, veritabanındaki verileri düzenleme yöntemidir