Cỳ phỏp và ngữ nghĩa của CFD

Một phần của tài liệu (LUẬN án TIẾN sĩ) phát hiện phụ thuộc hàm và phụ thuộc hàm suy rộng trong cơ sở dữ liệu (Trang 62 - 65)

2.2. Phỏt hiện FD và AFD

2.3.2. Cỳ phỏp và ngữ nghĩa của CFD

Vớ dụ 2.6 [12]. Xột quan hệ Khỏch hàng (Cust) được cho trong bảng 1.4,

trong đú CC (Country Code) là mó quốc gia, AC (Area Code) là mó vựng, PN (Phone Number) là số điện thoại, NM (Name) là tờn và [STR (Street), CT (City), ZIP (Zip Code)] là địa chỉ khỏch hàng.

Cỏc FD đỳng trờn quan hệ Cust, chẳng hạn như f1 và f2 dưới đõy, thỏa món đối với mọi bộ (bản ghi) trong quan hệ Cust.

f1: {CC, AC, PN}  {STR, CT, ZIP} f2: {CC, AC}  {CT}

Trỏi lại, ràng buộc sau chỉ đỳng khi mó quốc gia là 44, nghĩa là đối với cỏc khỏch hàng là người Anh thỡ ZIP xỏc định STR.

0: {CC = 44, ZIP}  {STR}

Núi cỏch khỏc, 0 là một FD đỳng trờn một tập con cỏc bộ của quan hệ

Cust (đỳng trờn cỏc bộ thỏa món điều kiện CC = 44), 0 khụng đỳng trờn tất

cả cỏc bộ của quan hệ Cust. Như vậy, rừ ràng là 0 khụng phải là một FD

(truyền thống) vỡ cũn chứa thờm một điều kiện (ràng buộc) về giỏ trị dữ liệu. Tương tự, cỏc ràng buộc sau cũng khụng phải là cỏc FD.

1: {CC = 01, AC = 908, PN}  {STR, CT = MH, ZIP} 2: {CC = 01, AC = 212, PN}  {STR, CT = NYC, ZIP} 3: {CC = 01, AC = 215}  {CT = PHI}

Ràng buộc 1 chỉ rừ rằng với cỏc khỏch hàng là người Mỹ (mó quốc gia là 01) và cú AC (mó vựng) là 908 thỡ hai bộ cú cựng giỏ trị trờn PN sẽ phải cú

cựng giỏ trị trờn STR và ZIP, ngoài ra CT (thành phố) phải là MH. Tương tự,

trong ràng buộc 2, nếu mó vựng là 212 thỡ thành phố phải là NYC. Ràng buộc

3 cho thấy tất cả cỏc khỏch hàng là người Mỹ và cú mó vựng 215 thỡ thành

phố (trong địa chỉ của họ) phải là PHI. Rừ ràng là 1 và 2 làm mịn FD f1, 3 làm mịn FD f2 đó cho ở trờn. Sự làm mịn này được thực hiện bằng việc ỏp đặt

mối liờn kết của cỏc giỏ trị dữ liệu cú liờn quan về mặt ngữ nghĩa. Ta thấy cỏc

bộ t1, t2 trong quan hệ Cust khụng vi phạm FD f1, tuy nhiờn chỳng lại vi phạm

phiờn bản làm mịn 1 vỡ thành phố khụng thể là MH đối với cỏc bộ cú mó

vựng 908.

Trong vớ dụ này, cỏc ràng buộc 0, 1, 2 và 3 đặc tả một phần cơ bản của ngữ nghĩa dữ liệu, tuy nhiờn chỳng khụng phải là cỏc FD theo nghĩa

trước đõy với mục đớch làm sạch dữ liệu. Trờn thực tế, cỏc ràng buộc cú điều kiện cú thể nảy sinh trong một số lĩnh vực. Chẳng hạn, mức lương của nhõn viờn cú thể xỏc định chức danh trong một số bộ phận của một cơ quan; địa chỉ cỏ nhõn cú thể xỏc định mức thuế trong một số quốc gia, trong khi ở cỏc quốc gia khỏc thỡ mức thuế lại phụ thuộc vào mức lương. Hơn nữa, cỏc ràng buộc cú điều kiện đặc biệt quan trọng khi tớch hợp dữ liệu vỡ cỏc ràng buộc chỉ

đỳng trờn một tập con của dữ liệu nguồn sẽ chỉ đỳng với điều kiện trờn dữ liệu

đó tớch hợp.

Định nghĩa 2.1 [12]. Một CFD  xỏc định trờn lược đồ quan hệ R là một cặp

 = (R: X  Y, Tp), trong đú X  Y là một FD (được gọi là FD nhỳng trong ) và Tp là một bảng mẫu với cỏc thuộc tớnh trong X  Y. Bảng mẫu Tp chứa

cỏc bộ mẫu, mỗi bộ mẫu tp  Tp chứa cỏc giỏ trị hằng và biến khụng tờn "".

Biến khụng tờn "" lấy giỏ trị trong miền thuộc tớnh tương ứng. Trong ngữ

cảnh nếu R là rừ ràng, ta sẽ viết  = (X  Y, Tp).

Vớ dụ 2.7 [12]. Cỏc ràng buộc 0, f1, 1, 2, f2, 3 trờn quan hệ Cust cú thể

được biểu diễn dưới dạng cỏc CFD: 1 (biểu diễn 0), 2 (biểu diễn f1, 1 và 2 tương ứng với 3 bộ mẫu trong T2) và 3 (biểu diễn f2, 3 và {CC = 44, AC

= 141}  {CT = GLA}).

1 = ({CC, ZIP}  {STR}, T1) với bảng mẫu T1

CC ZIP STR

44  

2 = ({CC, AC, PN}  {STR, CT, ZIP}, T2) với bảng mẫu T2

CC AC PN STR CT ZIP

     

01 908   MH

01 212   NYC

3 = ({CC, AC}  {CT}, T3) với bảng mẫu T3

CC AC CT

  

01 215 PHI

Ngữ nghĩa của CFD. Bảng mẫu Tp trong CFD  = (X  Y, Tp) xỏc định cỏc

bộ của quan hệ phải thỏa FD X  Y. Một cỏch trực quan, bảng mẫu Tp của  làm mịn FD X  Y được nhỳng trong  bằng việc ỏp đặt mối liờn kết của cỏc

giỏ trị dữ liệu cú liờn quan về mặt ngữ nghĩa. Để làm rừ ngữ nghĩa của , ta

cần khỏi niệm sỏnh hợp (matching) sau đõy.

Một bộ t trong quan hệ được gọi là sỏnh hợp với bộ mẫu tc  Tp (kớ

hiệu là t  tc) nếu tc[A] là một giỏ trị dữ liệu thỡ t[A] = tc[A] với A  X  Y.

Trường hợp tc[A] = "" thỡ giỏ trị t[A] là tựy ý. Chẳng hạn, t[A, B] = (a, b)  tc[A, B] = (a, ).

Vớ dụ 2.8. Mọi bộ trong quan hệ Cust đều sỏnh hợp với bộ mẫu thứ nhất (chỉ

gồm "") trong bảng T2 của 2, cỏc bộ t1, t2 trong quan hệ Cust vi phạm

(khụng sỏnh hợp) bộ mẫu thứ hai tc = (01, 908, , , MH, ) trong bảng T2 của

2 vỡ tc[CT] = MH  t1[CT] = t2[CT] = NYC.

Định nghĩa 2.2 [12]. Một quan hệ I trờn tập thuộc tớnh  được gọi là thỏa món CFD  (kớ hiệu I  ) nếu với mỗi cặp t1, t2  I và với mỗi tc  Tp, t1[X]

= t2[X]  tc[X] thỡ t1[Y] = t2[Y]  tc[Y]. Nghĩa là, nếu t1[X] và t2[X] bằng nhau và sỏnh hợp với tc[X] thỡ t1[Y] phải bằng t2[Y] và sỏnh hợp với tc[Y]. Ngoài ra,

nếu  là một tập cỏc CFD thỡ ta kớ hiệu I   nếu I   với mọi   .

Vớ dụ 2.9 [12]. Ta thấy quan hệ Cust thỏa món 1 và 3 nhưng khụng thỏa

món 2 vỡ bộ t1 vi phạm bộ mẫu (01, 098, , , MH, ) trong bảng mẫu T2 của

2 . Như vậy, một bộ cũng cú thể vi phạm CFD, trong khi sự vi phạm của FD

đũi hỏi phải xem xột hai bộ.

FD là trường hợp riờng của CFD. Thật vậy, FD X  Y chớnh là CFD (X

 Y, Tp) với Tp chỉ gồm một bộ mẫu tp duy nhất và tp[A] = "" với mọi A  X  Y.

Một phần của tài liệu (LUẬN án TIẾN sĩ) phát hiện phụ thuộc hàm và phụ thuộc hàm suy rộng trong cơ sở dữ liệu (Trang 62 - 65)

Tải bản đầy đủ (PDF)

(132 trang)