CSDL CHương 5 phụ thuộc dữ liệu

29 3.3K 1
CSDL   CHương 5 phụ thuộc dữ liệu

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Chương Các loại phụ thuộc liệu ThS Trần Nguyễn Minh Thái Emai: tnmthai@cit.ctu.edu.vn Bộ môn HTTT - ĐHCT Tháng 12/2015 Nội dung  Giới thiệu vấn đề  Phụ thuộc hàm Nội dung  Giới thiệu vấn đề  Phụ thuộc hàm Dư thừa liệu  Xét quan hệ CÁ_NHÂN (id, hoten, diachi, sothich) với thể hiện: id  hoten diachi sothich 10110100 John Doe 123 Lý Tự Trọng Bơi lội 10110100 John Doe 123 Ly Tự Trọng Bida 21345622 Huỳnh Huy Võ Thị Sáu Cầu Lông 21345622 Huỳnh Huy Võ Thị Sáu Bóng chuyền 55555555 Lê Văn Tám 411 30/4 Leo núi Xét đầu tiên:  Nhiều thông tin lặp lại (id, hoten, diachi) => lưu trữ dư thừa cho thông tin => Đây không vấn đề  Vấn đề giữ cho dư thừa quán CSDL điều phải thực cách hiệu => Dư thừa dẫn đến dị thường (anomaly) liệu Dị thường liệu   Dị thường liệu  Những mâu thuẫn liệu lưu trữ sở liệu,  Kết thao tác cập nhật, thêm, / xóa Sự mâu thuẫn phát sinh  Có đặc biệt lưu trữ nhiều địa điểm (các sao);  Nhưng tất cập nhật Dị thường liệu - ví dụ  Dị thường cập nhật   Dị thường thêm   Thay đổi địa cho “Huỳnh Huy” → Phải thay đổi đ/c tất mô tả “Huỳnh Huy” Thêm mà thông tin (hoặc NULL) sothich => thêm sothich phần Khóa Dị thường xoá :  Giả sử “Lê Văn Tám” không thích leo núi ta muốn xoá sở thích khỏi quan hệ:    Không có cách để xoá sở thích Hoặc xóa tất thông tin mô tả “Lê Văn Tám” → Mất thông tin xóa Hoặc thay sothich NULL → vấn đề NULL khóa Dị thường liệu  Nhận xét: Nếu có mô tả cá nhân → sothich không phần khoá → Các vấn đề nêu ví dụ không xảy Các tiêu chí đánh giá thiết kế LĐQH     Đảm bảo ngữ nghĩa thuộc tính rõ ràng lược đồ Giảm thông tin dư thừa Dư thừa liệu gây:  Dị thường liệu thêm sửa  Mất thông tin xoá Giảm giá trị NULL Các giá trị NULL làm:  Lãng phí không gian lưu trữ  Khó thực việc chọn, hàm kết tập nối kết Không chấp nhận khả tạo giả (spurious tuples)  Sinh kết nối quan hệ không dựa khoá khoá Nội dung   Giới thiệu vấn đề Phụ thuộc hàm Giới thiệu PTH   Khái niệm quan trọng lý thuyết thiết kế lược đồ quan hệ phụ thuộc hàm (PTH) PTH công cụ hình thức để phân tích lược đồ quan hệ :     Cho phép phát Mô tả số vấn đề vừa nêu Một PTH ràng buộc hai tập thuộc tính từ sở liệu PTH sử dụng để xác định dạng chuẩn (Normal Form) 10 Luật suy diễn - Hệ tiên đề Armstrong   Cho lược đồ quan hệ R(U), U={ A1, A2, …, An}, X   , Y  , X, Y, Z, W  U Hệ tiên đề Armstrong gồm luật sau:     Phản xạ: Tăng trưởng: Bắc cầu: Nếu Y  X Thì X → Y Nếu X → Y Thì XZ → YZ Nếu X → Y Y → Z Thì X → Z luật suy diễn luật sau:    Hợp: Giả bắc cầu: Phân rã: Nếu X → Y X → Z, Thì X → YZ Nếu X → Y YZ → W, Thì XZ → W Nếu X → YZ , Thì X → Y X → Z 15 Sử dụng hệ tiên đề Armstrong   Sử dụng hệ tiên đề Armstrong để suy diễn phụ thuộc hàm từ tập phụ thuộc hàm cho trước Ví dụ: Cho quan hệ R với tập PTH F sau: F= {  A →C B → H C,G → H,I A,B →I } Chứng minh AG → I suy diễn từ F  Ta có: A → C C,G → H,I => AG → H, I (tựa bắc cầu) => AG → I (phân rã) => Vậy AG → I suy diễn từ F 16 Các tính chất PTH Phản xạ: Nếu Y  X Thì X → Y Bắc cầu: Nếu X → Y Y → Z Thì X → Z Mở rộng vế: Nếu X → Y Thì XZ → YZ Tựa bắc cầu: Nếu X → Y YZ → W, Thì XZ → W Phản xạ chặt: X→X Mở rộng vế trái, thu hẹp vế phải Nếu X → Y XZ → Y\W với Z, W  U F7 : Cộng tính đầy đủ: Nếu X → Y Z → W XZ → YW F8 : Mở rộng vế trái: Nếu X → Y XZ → Y F9: Cộng tính vế phải: Nếu X → Y X → Z, Thì X → YZ F10 : Bộ phận vế phải :Nếu X → YZ , Thì X → Y X → Z F11 :Tích lũy Nếu X → YZ , Z → AW X → YAW F1: F2 : F3: F4: F5: F6: 17 Bao đóng (Closure)   Bao đóng tập PTH Bao đóng tập thuộc tính 18 Bao đóng tập PTH   Ví dụ: Cho F= { AB → C  BC → D D → E, G } Chứng minh AB → E  F+  Ta có: AB → C => AB → D (tựa bắc cầu) BC → D ta có D → E,G => D → E (phân rã) => AB → E (bắc cầu) => Vậy AB → E  F+ hay AB → E suy diễn từ F 19 Bao đóng tập PTH    Cho lược đồ quan hệ R(U), U={ A1, A2, …, An} F tập PTH R Bao đóng F, ký hiệu F+ bao gồm:   F Và PTH suy diễn từ F F gọi đầy đủ F = F+ +  Trên thực tế, việc tính F khó thực dẫn đến bùng nổ tổ hợp => Thay vào đó, ta xét xem PTH dạng X → Y có thuộc F+ hay không, nghĩa X → Y suy diễn từ F không ?  20 Bao đóng tập thuộc tính    Cho lược đồ quan hệ R(U), U = {A1, A2, …, An} X tập thuộc tính U, F tập PTH R Bao đóng tập thuộc tính X F, ký hiệu X+ bao gồm tập thuộc tính PTH vào X, nghĩa là:   X+= { A  U | X → A  F+} Nhận xét:  Làm biết PTH X → Y có suy diễn từ F không ?   X → Y  F+ X+  Y Nếu X+ = U X khóa R 21 Thuật toán tìm X+    Dữ liệu vào: lược đồ quan hệ R với tập thuộc tính U, tập PTH F X  U Dữ liệu : X+ Giải thuật:     Bước 1: Bước 2: X+ = X Nếu tồn A → B  F A  X+ : X+ = X+  B Lặp lại bước thêm thuộc tính cho X+ tất PTH xét Bước : Kết X+ 22 Thuật toán tìm X+  Ví dụ: cho tập PTH F= { A → C B → H C,G → H,I A,B →I }  Tìm (A)+ (AB)+  PTH A → H có suy diễn từ F không ? Hay A → H có thuộc F+ không ?  PTH AB → CH có suy diễn từ F không ? Hay AB → CH có thuộc F+ không ? Tìm (A)+ Bước lặp A+= A Bước lặp A+= A + C = AC A+= AC +  B3: A+= AC Tương tự ta có: (AB)+ = ABCHI A+= AC không chứa H => A → H F+ (AB)+= ABCHI chứa CH => AB → CH thuộc F+ 23 Phủ tối tiểu  Tập PTH tương đương   Hai tập PTH F G lược đồ quan hệ tương đương F+= G+ Phụ thuộc hàm thừa tập PTH  Một PTH X → Y gọi PTH thừa tập PTH F    F tương đương F\{X → Y} Hay {X → Y} suy diễn từ F\{X → Y} Ví dụ: F={ A → B, B → C, D → BE, A → C}  PTH thừa ??? => A → C PTH suy diễn từ hai PTH A→ B B → C 24 Phủ tối tiểu  Thuộc tính thừa vế trái   Xét PTH có dạng XiXj → Y Thuộc tính Xi vế trái PTH XiXj → Y gọi thuộc tính thừa F thay XiXj → Y Xj → Y F+ không thay đổi   Hay F+ = (F\{XiXj → Y}  {Xj → Y})+ Ví dụ: F={ A → B, AB → C, D → BE}  Thuộc tính thừa ??? => B PTH AB → C A→ B 25 Phủ tối tiểu  Tập PTH tối tiểu: F gọi tối tiểu F thỏa điều kiện sau:  Mọi PTH F có thuộc tính vế phải Không tồn PTH thừa Không tồn PTH mà vế trái có thuộc tính thừa  Ví dụ: cho F={ A → B, AB → C, D → BE, A → C}   => Phủ tối tiểu tập PTH F tập F' tương đương với F => Mọi tập PTH có tập PTH tối tiểu  Tập PTH tối tiểu F ??? F'={ A → B, A → C, D → B, D → E} 26 Thuật toán tìm phụ thuộc hàm tối tiểu Bước 1: Tách thuộc tính vế phải PTH vế phải chứa thuộc tính Bước 2: Loại bỏ phụ thuộc hàm thừa 27 Bước 3: Loại bỏ thuộc tính thừa vế trái, đưa tập PTH tối tiểu 28 Ví dụ Tìm tập PTH tối tiểu F= {BCDA, BC EF, A F, F G, CD, AG} Đáp án: H= {BC  A, BC  E, A  F, F  G, C  D} 29 [...]... không ?   X → Y  F+ X+  Y Nếu X+ = U thì X là khóa của R 21 Thuật toán tìm X+    Dữ liệu vào: lược đồ quan hệ R với tập thuộc tính U, tập PTH F và X  U Dữ liệu ra : X+ Giải thuật:     Bước 1: Bước 2: X+ = X Nếu tồn tại A → B  F và A  X+ thì : X+ = X+  B Lặp lại bước 2 cho đến khi không thể thêm thuộc tính cho X+ hoặc tất cả các PTH đã được xét Bước 3 : Kết quả là X+ 22 Thuật toán tìm... bùng nổ tổ hợp => Thay vào đó, ta sẽ xét xem một PTH dạng X → Y có thuộc F+ hay không, nghĩa là X → Y được suy diễn từ F không ?  20 Bao đóng của tập thuộc tính    Cho lược đồ quan hệ R(U), U = {A1, A2, …, An} X là tập các thuộc tính trên U, F là tập các PTH trên R Bao đóng của tập thuộc tính X đối với F, ký hiệu X+ bao gồm tập các thuộc tính PTH vào X, nghĩa là:   X+= { A  U | X → A  F+} Nhận... các luật sau:    Hợp: Giả bắc cầu: Phân rã: Nếu X → Y và X → Z, Thì X → YZ Nếu X → Y và YZ → W, Thì XZ → W Nếu X → YZ , Thì X → Y và X → Z 15 Sử dụng hệ tiên đề Armstrong   Sử dụng hệ tiên đề Armstrong để suy diễn một phụ thuộc hàm mới từ một tập các phụ thuộc hàm cho trước Ví dụ: Cho quan hệ R với tập PTH F như sau: F= {  A →C B → H C,G → H,I A,B →I } Chứng minh rằng AG → I được suy diễn từ F... có thuộc F+ không ?  PTH AB → CH có suy diễn được từ F không ? Hay AB → CH có thuộc F+ không ? Tìm (A)+ Bước lặp 1 A+= A Bước lặp 2 A+= A + C = AC A+= AC +  B3: A+= AC Tương tự ta có: (AB)+ = ABCHI A+= AC không chứa H => A → H F+ (AB)+= ABCHI chứa CH => AB → CH thuộc F+ 23 Phủ tối tiểu  Tập PTH tương đương   Hai tập PTH F và G trên cùng lược đồ quan hệ là tương đương nếu và chỉ nếu F+= G+ Phụ thuộc. .. từ hai PTH A→ B và B → C 24 Phủ tối tiểu  Thuộc tính thừa ở vế trái   Xét PTH có dạng XiXj → Y Thuộc tính Xi ở vế trái của PTH XiXj → Y được gọi là thuộc tính thừa nếu trong F thay XiXj → Y bằng Xj → Y thì F+ vẫn không thay đổi   Hay F+ = (F\{XiXj → Y}  {Xj → Y})+ Ví dụ: F={ A → B, AB → C, D → BE}  Thuộc tính thừa ??? => B trong PTH AB → C vì A→ B 25 Phủ tối tiểu  Tập PTH tối tiểu: F được gọi... chỉ có một thuộc tính ở vế phải Không tồn tại PTH thừa Không tồn tại PTH mà vế trái của nó có thuộc tính thừa  Ví dụ: cho F={ A → B, AB → C, D → BE, A → C}   => Phủ tối tiểu của tập PTH F là tập F' tương đương với F => Mọi tập PTH đều có ít nhất một tập PTH tối tiểu  Tập PTH tối tiểu của F ??? F'={ A → B, A → C, D → B, D → E} 26 Thuật toán tìm phụ thuộc hàm tối tiểu Bước 1: Tách các thuộc tính... A2, …, An}, X  , Y  , X  U, Y  U Định nghĩa X xác định Y hay Y phụ thuộc hàm vào X , nếu và chỉ nếu với mỗi giá trị của X xác định duy nhất một giá trị của Y, hay:  r  R,  t1, t2  r , t1[X]=t2[X] thì t1[Y]=t2[Y]   Ký hiệu X → Y X là vế trái và Y là vế phải của PTH 11 Ví dụ   A→B? B→A? 12 Ví dụ  Cho quan hệ R với tập phụ thuộc hàm F : F= { A B,C D A,C A,C → → → → → B D E D E} AB → E ???... tiểu của F ??? F'={ A → B, A → C, D → B, D → E} 26 Thuật toán tìm phụ thuộc hàm tối tiểu Bước 1: Tách các thuộc tính ở vế phải của các PTH để cho vế phải chỉ còn chứa 1 thuộc tính Bước 2: Loại bỏ phụ thuộc hàm thừa 27 Bước 3: Loại bỏ thuộc tính thừa ở vế trái, đưa về tập PTH tối tiểu 28 Ví dụ Tìm tập PTH tối tiểu của F= {BCDA, BC EF, A F, F G, CD, AG} Đáp án: H= {BC  A, BC  E, A  F, F  G,... tính vế phải: Nếu X → Y và X → Z, Thì X → YZ F10 : Bộ phận vế phải :Nếu X → YZ , Thì X → Y và X → Z F11 :Tích lũy Nếu X → YZ , Z → AW thì X → YAW F1: F2 : F3: F4: F5: F6: 17 Bao đóng (Closure)   Bao đóng của tập các PTH Bao đóng của tập các thuộc tính 18 Bao đóng của tập các PTH   Ví dụ: Cho F= { AB → C  BC → D D → E, G } Chứng minh rằng AB → E  F+  Ta có: AB → C => AB → D (tựa bắc cầu) BC → D

Ngày đăng: 26/05/2016, 10:31

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan