İşlevsel Bağımlılık nedir?
İşlevsel Bağımlılık (FD) , bir Veri Tabanı Yönetim Sistemindeki (DBMS) bir özniteliğin başka bir öznitelikle 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, bir ok "→" ile 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.
Misal:
Çalışan sayısı | İşçi adı | Maaş | Kent |
1 | Dana | 50000 | San Francisco |
2 | Francis | 38.000 | Londra |
3 | Andrew | 25.000 | Tokyo |
Bu örnekte, Çalışan numarasının değerini biliyorsak, Çalışan Adı, şehir, maaş vb. Elde edebiliriz. Bununla şehir, Çalışan Adı ve maaşın işlevsel olarak Çalışan numarasına bağlı olduğunu söyleyebiliriz.
Bu eğitimde şunları öğreneceksiniz:
- Anahtar terimler
- İşlevsel Bağımlılık Kuralları
- DBMS'de İşlevsel Bağımlılık Türleri
- DBMS'de birden çok değerli bağımlılık
- DBMS'de Önemsiz İşlevsel bağımlılık
- DBMS'de önemsiz olmayan İşlevsel bağımlılık
- DBMS'de geçişli bağımlılık
- Normalleştirme nedir?
- Fonksiyonel Bağımlılığın Avantajları
Anahtar terimler
Veritabanında İş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 çıkarım kuralları kümesidir. |
Ayrışma | Aynı birincil anahtar tarafından belirlenen iki varlık içeriyor gibi görünen bir tablonuz varsa, bunları iki farklı tabloya bölmeyi düşünmeniz gerektiğini öneren bir kuraldır. |
Bağımlı | Fonksiyonel bağımlılık diyagramının sağ tarafında görüntülenir . |
Belirleyici | Fonksiyonel bağımlılık diyagramının sol tarafında görüntülenir. |
Birlik | İki tablo ayrı ise ve PK aynı ise, bunları koymayı 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ğıdadır:
- Dönüşlü kural -. X bir öznitelik kümesiyse ve Y, X'in alt kümesiyse, X, Y'nin değerini tutar.
- Arttırma kuralı: x -> y tuttuğunda ve c nitelik ayarlandığında, ac -> bc de tutar. Bu, temel bağımlılıkları değiştirmeyen nitelikler eklemektir.
- Geçiş kuralı: Bu kural, cebirdeki geçiş kuralına çok benzer, eğer x -> y tutarsa ve y -> z tutarsa, o zaman x -> z de geçerlidir. X -> y, y'yi belirleyen işlevsel olarak adlandırılır.
DBMS'de İşlevsel Bağımlılık Türleri
DBMS'de başlıca dört tür İşlevsel Bağımlılık vardır. DBMS'deki İşlevsel Bağımlılık türleri aşağıdadır:
- Birden Ç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 Birden Çok Değerli Bağımlılık
Birden çok değerli bağımlılık, tek bir tabloda birden çok bağımsız birden çok değerli öznitelik olduğu durumda oluşur. Çok değerli bir bağımlılık, bir ilişkideki iki öznitelik kümesi arasındaki tam bir kısıtlamadır. Bir ilişkide belirli demetlerin mevcut olmasını gerektirir. Anlamak için aşağıdaki Birden Çok Değerli Bağımlılık Örneğini düşünün.
Misal:
Araba modeli | Maf_year | Renk |
H001 | 2017 | Metalik |
H001 | 2017 | Yeşil |
H005 | 2018 | Metalik |
H005 | 2018 | Mavi |
H010 | 2015 | Metalik |
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ı çok değerli olduğu söyleniyor.
Bu bağımlılık şu şekilde temsil edilebilir:
car_model -> maf_year
car_model-> renk
DBMS'de Önemsiz İşlevsel Bağımlılık
Önemsiz bağımlılık, öznitelikler kümesi bu özniteliğe dahil edilmişse önemsiz olarak adlandırılan bir öznitelikler kümesidir.
Dolayısıyla, 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ği ile anlayalım.
Örneğin:
Emp_id | Emp_name |
AS555 | Harry |
AS811 | George |
AS999 | Kevin |
Emp_id ve Emp_name adlı iki sütunlu bu tabloyu düşünün.
{Emp_id, Emp_name} -> Emp_id, {Emp_id, Emp_name} alt kümesi olduğundan Emp_id önemsiz bir işlevsel bağımlılıktır.
DBMS'de Önemsiz Olmayan İşlevsel Bağımlılık
Önemsiz bağımlılık olarak da bilinen işlevsel bağımlılık, B'nin A'nın bir alt kümesi olmadığı durumda A-> B doğru olduğunda ortaya çıkar. Bir ilişkide, B özniteliği A özniteliğinin bir alt kümesi değilse, o zaman önemsiz olmayan bağımlılık.
şirket | CEO | Yaş |
Microsoft | Satya Nadella | 51 |
Sundar Pichai | 46 | |
elma | Tim Cook | 57 |
Misal:
(Şirket} -> {CEO} (Şirketi tanıyorsak, CEO adını da biliriz)
Ancak CEO, Şirketin bir alt kümesi değildir ve bu nedenle önemsiz olmayan işlevsel bağımlılıktır.
DBMS'de Geçişli Bağımlılık
Geçişli Bağımlılık, iki işlevsel bağımlılık tarafından dolaylı olarak oluşturulduğunda ortaya çıkan 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.
Misal:
şirket | CEO | Yaş |
Microsoft | Satya Nadella | 51 |
Sundar Pichai | 46 | |
Alibaba | Jack Ma | 54 |
{Company} -> {CEO} (şirketi tanıyorsak, CEO'sunun adını da biliyoruz)
{CEO} -> {Age} CEO’yu tanıyorsak, Yaşı biliyoruz
Bu nedenle geçişli bağımlılık kuralına göre:
{Company} -> {Age} tutmalı, bu mantıklı çünkü şirketin adını bilirsek, yaşını da öğrenebiliriz.
Not: Geçişli bağımlılığın yalnızca üç veya daha fazla öznitelik ilişkisinde ortaya çıkabileceğini hatırlamanız gerekir.
Normalleştirme nedir?
Normalleştirme, veri fazlalığı, ekleme, güncelleme ve silme anormalliklerinden kaçınmanıza yardımcı olan veri tabanındaki verileri düzenleme yöntemidir. İlişki şemalarını farklı işlevsel bağımlılıklarına ve birincil anahtarlarına göre analiz etme sürecidir.
Normalleştirme, ilişkisel veritabanı teorisinin doğasında vardır. Veritabanında aynı verileri çoğaltma 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 bu veritabanında birden fazla yerde tekrarlanmaz.
- 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ı belirlemenize yardımcı olur
- Veritabanı tasarımıyla ilgili gerçekleri bulmanıza yardımcı olur
Özet
- İşlevsel Bağımlılık, bir özniteliğin bir DBMS sisteminde başka bir özniteliği belirlediği zamandır.
- 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 1) Birden Çok Değerli 2) Önemsiz 3) Önemsiz 4) Geçişli
- Birden çok değerli bağımlılık, tek bir tabloda birden çok bağımsız birden çok değerli öznitelik olduğu durumda oluşur
- Önemsiz bağımlılık, bir öznitelik kümesi bu özniteliğe dahilse önemsiz olarak adlandırılan bir öznitelik kümesi olduğunda ortaya çıkar.
- B A'nın bir alt kümesi olmadığı durumda A-> B doğru olduğunda, önemsiz bağımlılık oluşur.
- Geçişli, dolaylı olarak iki işlevsel bağımlılık tarafından oluşturulduğunda ortaya çıkan bir tür işlevsel bağımlılıktır.
- Normalleştirme, veri fazlalığını önlemenize yardımcı olan veri tabanındaki verileri düzenleme yöntemidir