Professional Documents
Culture Documents
Is+301+ +Co+So+Du+Lieu+ +2020S+ +Lecture+Slides+12
Is+301+ +Co+So+Du+Lieu+ +2020S+ +Lecture+Slides+12
Is+301+ +Co+So+Du+Lieu+ +2020S+ +Lecture+Slides+12
Chương 6
Thiết kế cơ sở dữ liệu
GV: HÀ LÊ TRUNG
Email: haletrung@duytan.edu.vn
Mobile: 0906.459.468
Thời lượng: 180 phút
THIẾT KẾ CƠ SỞ DỮ LIỆU
Nội dung chi tiết
• Bao đóng của tập thuộc tính
• Phủ của tập phụ thuộc hàm
• Phủ tối thiểu và thuật toán tìm phủ tối thiểu
2
THIẾT KẾ CƠ SỞ DỮ LIỆU
Slide 5
THIẾT KẾ CƠ SỞ DỮ LIỆU
2.3 Tính toán bao đóng
b. Thuật toán:
- Phương pháp:
(1) Đặt X0 = X
(2) Giả sử đã có Xk-1. Tính
Xk Đặt Xk = Xk-1
Duyệt lần lượt các PTH VT(vế trái) -> VP(vế
phải) F
Nếu VT Xk, VP Xk thì thay Xk = Xk VP
Nếu Xk = R thì thuật toán kết thúc, ta có X+ =R
Slide 6
THIẾT KẾ CƠ SỞ DỮ LIỆU
2.3 Tính toán bao đóng
b. Thuật toán:
- Phương pháp:
(3) Điều kiện kết thúc: Xk = R hoặc Xk = Xk-1
(*)
Nếu (*) đúng thì kết thúc X+ = Xk
Ngược lại tăng k lên 1 và quay về bước 2
Slide 7
THIẾT KẾ CƠ SỞ DỮ LIỆU
Slide 8
THIẾT KẾ CƠ SỞ DỮ LIỆU
Tính (CE)+
Giải: Đặt X0 = X = {CE}
Tính X1
Đặt X1 = X0 ={CE}
Duyệt lần lượt các PTH trong F
Có f2: C -> A , VT X1 và VP X1
=> X1 = X1 {A} ={CEA}
f8: CE -> AG, VT X1 và VP X1
=> X1 = X1 {AG} ={CEAG}
Slide 9
THIẾT KẾ CƠ SỞ DỮ LIỆU
Giải:
Vì X1 X0 và X1 R nên tăng k lên 1
Đặt X2 = X1 = {CEAG}
Duyệt lần lượt các PTH trong F
f6: CG -> BD, VT X2 và VP X2
=> X2 = X2 {BD} = {CEAGBD}
Vì X2 = R nên thuật toán kết thúc
KL: (CE)+= (CEAGBD)
Slide 10
THIẾT KẾ CƠ SỞ DỮ LIỆU
Tính (AD)+
Giải: Đặt X0 = X = {AD}
Tính X1
Đặt X1 = X0 ={AD}
Duyệt lần lượt các PTH trong F
Có f4: D -> EG , VT X1 và VP X1
=> X1 = X1 {EG} ={ADEG}
Slide 11
THIẾT KẾ CƠ SỞ DỮ LIỆU
Giải:
Vì X1 X0 và X1 R nên tăng k lên 1
Đặt X2 = X1 = {ADEG}
Duyệt lần lượt các PTH trong F
không có PTH trong F thỏa mãn
Vì X2 = X1 nên thuật toán kết thúc
KL: (AD)+= (ADEG)
Slide 12
THIẾT KẾ CƠ SỞ DỮ LIỆU
Slide 13
THIẾT KẾ CƠ SỞ DỮ LIỆU
2.3 Phủ tối thiểu
a. Định nghĩa: Tập các phụ thuộc hàm F là tối
thiểu nếu:
-Mỗi vế phải của một PTH thuộc F chỉ có
một thuộc tính
-Không tồn tại một PTH X -> A thuộc F mà
F+ = (F – {X ->A})+
-Không tồn tại một phụ thuộc hàm X -> A
thuộc F và một tập con Z của X mà:
F+ = (F – {X -> A}{Z ->A})+
Slide 14
THIẾT KẾ CƠ SỞ DỮ LIỆU
Slide 15
THIẾT KẾ CƠ SỞ DỮ LIỆU
Slide 18
THIẾT KẾ CƠ SỞ DỮ LIỆU
Ví dụ 1: Cho lược đồ R (A, B, C) và tập PTH
F = {f1:A -> BC, f2:C -> AB}. Tìm phủ tối thiểu
của F
(3) Loại bỏ thuộc tính dư thừa ở vế trái
Vì vế trái của tất cả các PTH đều có một thuộc
tính nên không xét bước 3
Vậy G = {A -> C, C -> A, C -> B} là phủ tối
thiểu
Slide 19
THIẾT KẾ CƠ SỞ DỮ LIỆU
Slide 20
THIẾT KẾ CƠ SỞ DỮ LIỆU
Slide 21
THIẾT KẾ CƠ SỞ DỮ LIỆU
Slide 22
THIẾT KẾ CƠ SỞ DỮ LIỆU
Slide 23
THIẾT KẾ CƠ SỞ DỮ LIỆU
Slide 24
THIẾT KẾ CƠ SỞ DỮ LIỆU
Câu hỏi thảo luận
1. Vì sao cần tìm phủ tối thiểu?
2. Các bước tìm phủ tối thiểu
3. Các bước tìm bao đóng của tập thuộc tính
4. Phủ tối thiểu dư có ảnh hưởng gì?
Trả lời vào đầu buổi học tiếp theo
25
THIẾT KẾ CƠ SỞ DỮ LIỆU
Bài tập về nhà (cá nhân)
1. CHO R(ABEIGH) VÀ TẬP PHỤ THUỘC HÀM
F= {f1: ABE, f2: AGIB, f3: BEIG, f4: EG, f5:
GIHB}. Tìm phủ tối thiểu của F
2. CHO R(ABCDEI) VÀ TẬP PHỤ THUỘC HÀM
F= {f1: ADC, f2: ABEI, f3: BIEC, f4: CDI, f5: EC}.
Tìm phủ tối thiểu của F
3. CHO R(ABCDEGH) VÀ TẬP PHỤ THUỘC HÀM
• F= {f1: ABCG, f2: BDH, f3: CDEB, f4: CEGH, f5:
GA}. Tìm phủ tối thiểu của F
Link: https://www.youtube.com/watch?v=dR_pwW6e8Nc
26
THIẾT KẾ CƠ SỞ DỮ LIỆU
27