Kayıpsız birleşim ayrışması - Lossless join decomposition

İçinde veri tabanı tasarımı, bir kayıpsız birleşim ayrışması bir ilişkinin ayrışmasıdır ilişkilere öyle ki bir doğal birleşim daha küçük iki ilişkiden orijinal ilişkiyi geri getirir. Bu, artıklığı güvenli bir şekilde veritabanları orijinal verileri korurken.[1]

Kriterler

Katkısız olarak da adlandırılabilir.[kaynak belirtilmeli ]

Eğer bölünmüş ve , bu ayrışmanın kayıpsız olması için (yani, ) daha sonra aşağıdaki iki kriterden en az biri karşılanmalıdır.

Kontrol 1: Katılımı açıkça doğrulayın

Projeksiyon ve ve onlara tekrar katılmak, başladığınız ilişkiyle sonuçlanır.[2][güvenilmez kaynak? ]

Kontrol 2: İşlevsel bağımlılıklar yoluyla

İzin Vermek bir ilişki şeması olabilir.

İzin Vermek F bir dizi olmak işlevsel bağımlılıklar açık .

İzin Vermek ve ayrıştırmak .

Ayrıştırma, kayıpsız bir birleşim ayrışmasıdır. aşağıdaki işlevsel bağımlılıklardan en az biri, F+ (nerede F+ içindeki her öznitelik veya öznitelik kümesinin kapanışı anlamına gelir F):[3]

Örnekler

  • İzin Vermek özniteliklerle ilişki şeması olun Bir, B, C ve D.
  • İzin Vermek işlevsel bağımlılıklar kümesi olabilir.
  • Ayrışma ve altında kayıpsız F Çünkü . Bir içinde bir süper yani işlevsel bir bağımlılığımız var . Başka bir deyişle, şimdi bunu kanıtladık .

[4][5]

Referanslar

  1. ^ Pohler, K (2015). "Kayıpsız Birleştirme Ayrıştırma: kantitatif hesaplama ölçülerindeki uygulamalar". Uluslararası Uygulamalı Bilgisayar Bilimleri Dergisi. 21 (4): 190–212.
  2. ^ "Kayıpsız Birleştirme Özelliği". Stackoverflow.com. Alındı 2016-02-07.
  3. ^ "Kayıpsız Birleştirme Ayrıştırması" (PDF). Buffalo Üniversitesi. Jan Chomicki. Alındı 2012-02-08. Alıntıda boş bilinmeyen parametre var: | ortak yazarlar = (Yardım)
  4. ^ "Kayıpsız Birleşim Ayrıştırma". Cs.sfu.ca. Alındı 2016-02-07.
  5. ^ "Arşivlenmiş kopya". Arşivlenen orijinal 2014-02-21 tarihinde. Alındı 2014-02-12.CS1 Maint: başlık olarak arşivlenmiş kopya (bağlantı)