Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 22 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
22
Dung lượng
0,96 MB
Nội dung
1 Trường Đại học Khoa học Tự nhiên Khoa Công nghệ Thông tin Bộ môn Hệ thống Thông tin Chương 3 : Thiết kế Cơ sở dữ liệu mức quan niệm 2 Nội dungNội dung • Dẫn nhập- Những mục tiêu chính • Dạng chuẩn • Cấu trúc CSDL tương đương • Hai cách tiếp cận để thiết kế CSDL 3 Dẫn nhậpDẫn nhập • Đầu vào: kết quả của giai đoạn phân tích nhu cầu, có thể là: – Sơ phác cấu trúc CSDL (bằng một mô hình dữ liệu : mô hình quan hệ, thực thể kết hợp,) gồm các quan hệ con Q’ 1 , Q’ 2 , Q’ m và các phụ thuộc dữ liệu định nghĩa trên mỗi quan hệ con: D’ 1 , D’ 2 , D’ m : C 0 ’ = {<Q’ 1 , D’ 1 >, <Q’ 2 , D’ 2 >,<Q’ m , D’ m >} (a) – Một sơ phác tổng thể bao gồm một quan hệ duy nhất Q 0 và một tập các phụ thuộc D 0 C 0 = <Q 0 , D 0 > (b) 4 Dẫn nhập (tt)Dẫn nhập (tt) • Thiết kế CSDL mức quan niệm: – Biến đổi đầu vào này thành một cấu trúc CSDL quan niệm “tốt” hơn, “phù hợp” hơn với các yêu cầu của môi trường ứng dụng – Dựa trên một số tiêu chuẩn thiết kế C 0 ’ = {<Q’ i , D’ i >} C 0 = <Q 0 , D 0 > Thiết kế CSDL mức quan niệm C = <Q j , D j > 2 5 Giả thiết quan hệ phổ quátGiả thiết quan hệ phổ quát • Là nền tảng của các nghiên cứu về mô hình quan hệ và phụ thuộc dữ liệu ứng dụng vào việc thiết kế CSDL • Khái niệm quan hệ phổ quát: – Mỗi môi trường ứng dụng đều có thể được mô hình hóa bằng một quan hệ duy nhất, gọi là quan hệ phổ quát, ký hiệu U – Quan hệ phổ quát tập trung tất cả các thuộc tính của môi trường ứng dụng 6 Giả thuyết quan hệ phổ quát (tt)Giả thuyết quan hệ phổ quát (tt) • Nếu cấu trúc sơ phác CSDL là C CC C 0 ’ (trường hợp a), ngầm hiểu quan hệ phổ quát U như sau: – U chứa tất cả các thuộc tính của các quan hệ con Q’ I. – Mỗi quan hệ con Q’ i là kết quả của phép chiếu của U lên Q’ i + : ∀i, Q’ i = U[Q’ i + ]. • Nếu cấu trúc sơ phác là C CC C 0 (trường hợp b), khái niệm quan hệ phổ quát đã ngầm được sử dụng. 7 Giả thuyết quan hệ phổ quát (tt)Giả thuyết quan hệ phổ quát (tt) • Hệ quả: – (i) Mỗi một thuộc tính có một ý nghĩa duy nhất. Dù thuộc tính này hiện diện trong quan hệ con hay quan hệ phổ quát, ý nghĩa của nó vẫn như nhau. – (ii) Giữa hai thuộc tính chỉ có một mối kết hợp mang ý nghĩa duy nhất. 8 Giả thuyết quan hệ phổ quát (tt)Giả thuyết quan hệ phổ quát (tt) • Ví dụ 3.1: Cho môi trường ứng dụng với 3 quan hệ con như sau: ĐẶT_HÀNG (Mã_ĐH, Ngày), F ĐH = {Mã_ĐH → Ngày} THỐNG_KÊ_HÀNG_GIAO(MãHG, Ngày, Lượng) F TKHG = {MãHG, Ngày → Lượng } CHI_TIẾT_ĐẶT_HÀNG (Mã_ĐH, Mã_HG, Lượng) F CTĐH = {Mã_ĐH, Mã_HG → Lượng } Các thuộc tính Ngày và Lượng có ý nghĩa khác nhau trong các quan hệ khác nhau. 3 9 Giả thuyết quan hệ phổ quát (tt)Giả thuyết quan hệ phổ quát (tt) • Ví dụ 3.1 (tt): Gây ra tình trạng nhập nhằng về ngữ nghĩa, dẫn đến kết quả sai trong quá trình thiết kế lại cấu trúc CSDL khi áp dụng luật dẫn cho phụ thuộc dữ liệu trên toàn cục Từ (Mã_ĐH → Ngày) và (MãHG, Ngày → Lượng) ta suy dẫn được PTH (MãHG, Mã_ĐH → Lượng), dù PTH này không đúng trên thực tế. Phải đặt tên lại cho các thuộc tính: Ngày trong ĐẶT_HÀNG thành Ngày_ĐH Ngày trong THỐNG_KÊ_HÀNG_GIAO thành Ngày_TK 10 Giả thuyết quan hệ phổ quát (tt)Giả thuyết quan hệ phổ quát (tt) • Ví dụ 3.2: Cho quan hệ NHÂN_VIÊN( Mã_NV, Tên_NV, Ngày) Ý nghĩa mối kết hợp giữa Mã_NV và Ngày : Ngày sinh của nhân viên Mối kết hợp này là duy nhất : nếu cần thêm thông tin về ngày tuyển dụng, ta phải dùng thêm một thuộc tính Ngày_TD, không thể thêm một ý nghĩa khác cho mối kết hợp giữa Mã_NV và Ngày. 11 Cơ chế kiểm tra phụ thuộc hàmCơ chế kiểm tra phụ thuộc hàm • Phụ thuộc hàm: một loại ràng buộc toàn vẹn quan trọng trong CSDL quan hệ • Cần chọn cấu trúc CSDL sao cho việc kiểm tra PTH hiệu quả nhất. • Xem xét: – Cơ chế kiểm tra PTH nào được hệ quản trị CSDL hỗ trợ. – Thời điểm cần kiểm tra PTH trong quá trình khai thác CSDL? 12 Cơ chế khóaCơ chế khóa • Định nghĩa: Cho một quan hệ Q, một khóa K của Q Cơ chế khóa là một cơ chế có sẵn của Hệ quản trị CSDL nhằm đảm bảo: ∀q, q’ ∈ Q sao cho q ≠ q’ , q.K ≠q’.K • Hệ thống chỉ mục với giá trị duy nhất là một ví dụ của cơ chế khóa • Cơ chế khóa đảm bảo kiểm tra hiệu quả các phụ thuộc hàm dạng K→ →→ →A, với A∈ ∈∈ ∈Q + và K là một khóa của Q (Không cần duyệt tuần tự qua tất cả các bộ trong TQ) 4 13 Hợp lệ hóa tình trạng một quan hệHợp lệ hóa tình trạng một quan hệ • Cho một quan hệ Q(ABC) với khóa là A, và các phụ thuộc hàm được định nghĩa trên Q: F FF F = {B→ →→ →C, A → →→ →BC} • Cho một tình trạng của Q: • Tình trạng của Q được hợp lệ hóa đối với các PTH định nghĩa trên Q nếu TQ thỏa tất cả các PTH này A B C a 1 b 1 c 1 a 2 b 2 c 1 a 3 b 3 c 3 a 4 b 2 c 1 14 Hợp lệ hóa tình trạng của một quan hệ (tt)Hợp lệ hóa tình trạng của một quan hệ (tt) • Kiểm tra B→ →→ → C, đảm bảo: ∀q, q’ ∈ Q, nếu q.B = q’.B thì q.C = q’.C Cần duyệt qua tất cả các bộ của TQ để kiểm tra tốn kém và mất thời gian khi TQ lớn • Kiểm tra A→ →→ → BC: nhờ cơ chế khóa của HQT CSDL, việc kiểm tra PTH này sẽ hiệu quả hơn. 15 Hợp lệ hoá một biến đổi tình trạng của QHợp lệ hoá một biến đổi tình trạng của Q • Cho một tình trạng TQ 1 đã hợp lệ • TQ 1 được biến đổi thành TQ 2 sau một vài thao tác – Các thao tác biến TQ 1 thành TQ 2 có thể gây ra tình trạng không hợp lệ cho TQ 2 cần phải hợp lệ hóa TQ 2 (kiểm tra lại xem F có còn thỏa trong TQ 2 ) – Các thao tác có thể xảy ra trên TQ 1 : Thêm một bộ: phải kiểm tra lại các PTH trong F . Xóa một bộ: không cần kiểm tra lại PTH (nhưng có nguy cơ bị mất thông tin) Sửa một bộ: phải kiểm tra lại PTH và có nguy cơ bị mất thông tin. (Sửa = Xoá+Thêm) 16 Các mục tiêu thiết kếCác mục tiêu thiết kế • Hai tiêu chuẩn quan trong cần đạt được trong quá trình thiết kế CSDL mức quan niệm: – Cấu trúc CSDL kết quả (đầu ra của giai đoạn thiết kế mức quan niệm) cần đạt dạng chuẩn cao nhất – Cấu trúc CSDL kết quả phải tương đương với cấu trúc ban đầu 5 17 Các mục tiêu thiết kế (tt)Các mục tiêu thiết kế (tt) • Tiêu chuẩn về dạng chuẩn: – Giảm tối đa sự trùng lắp thông tin, từ đó tránh được một số bất tiện khi cập nhật CSDL – Các phụ thuộc dữ liệu được kiểm tra dễ dàng nhất, đơn giản và tương đối ít tốn kém nhất • Tiêu chuẩn tương đương: – Đảm bảo các thông tin trong quan hệ phổ quát sẽ được tìm thấy đầy đủ trong CSDL của cấu trúc kết quả. 18 Các mục tiêu thiết kếCác mục tiêu thiết kế • Một CSDL thỏa mãn tiêu chuẩn về dạng chuẩn và tính tương đương đảm bảo cho việc khai thác nó được thuận lợi trên cả ba phương diện: – Truy vấn: tiêu chuẩn tương đương đảm bảo các thông tin được truy xuất từ CSDL là những thông tin đã được phân tích. – Cập nhật: Tiêu chuẩn dạng chuẩn giảm bớt các tình huống thông tin mâu thuẩn sau khi cập nhật. – Kiểm tra ràng buộc toàn vẹn: cả hai tiêu chuẩn đều hướng đến mục tiêu là kiểm tra RBTV dạng phụ thuộc dữ liệu được thuận lợi. 19 Nội dungNội dung • Dẫn nhập- Những mục tiêu chính • Dạng chuẩn • Cấu trúc CSDL tương đương • Hai cách tiếp cận để thiết kế CSDL 20 Quan hệ được chuẩn hóa Quan hệ được chuẩn hóa –– Định nghĩa dạng chuẩn 1 Định nghĩa dạng chuẩn 1 (DC1)(DC1) • Trước khi Codd đề nghị khái niệm dạng chuẩn (1970), công nghệ lưu trữ dữ liệu khuyến khích cấu trúc dữ liệu phân cấp, trong đó có nhiều trường lặp. • Ví dụ 3.3 DANH_SÁCH_LỚP(TênLớp, SỉSố, (TênHS,(Điểm)*15)*30) Điểm được lặp lại 15 lần (mỗi học sinh có tối đa 15 cột điểm) Thông tin về mỗi học sinh (tên học sinh, các điểm)được lặp lại 30 lần (lớp học có tối đa 30 học sinh) 6 21 Quan hệ được chuẩn hóa Quan hệ được chuẩn hóa –– Định nghĩa dạng chuẩn 1Định nghĩa dạng chuẩn 1 • Ví dụ 3.3 (tt): – Hình sau minh họa dữ liệu của quan hệ DANH_SÁCH_LỚP: TênLớp SỉSố TênHS_1 Điểm_11 Điểm_12 Điểm_15 TênHS_2 Điểm_21 11A1 30 Nguyễn Văn A 7 8 9 Trần Thị B 6 11A2 28 Võ Văn C 8 6 10 22 Quan hệ được chuẩn hóa Quan hệ được chuẩn hóa –– Định nghĩa dạng chuẩn 1Định nghĩa dạng chuẩn 1 • E.F. Codd đề nghị cấu trúc lưu trữ chuẩn hóa, theo đó, cấu trúc CSDL trong ví dụ 3.1 trở thành: DANH_SÁCH_HS(TênLớp, SỉSố, STT 1 , TênHS) ĐiỂM_HS_LỚP(TênLớp, STT 1 , STT 2 , Điểm) – Các thuộc tính STT1, STT2 sau đó được thay bằng tên gọi có tính gợi nhớ, phù hợp với ngữ nghĩa của chúng: STT1: mã số học sinh trong lớp, thay bằng “MãHS”. STT2: môn học, thay bằng “Môn” – Hai quan hệ trên trở thành: DANH_SÁCH_HS(TênLớp, SỉSố, MãHS, TênHS) ĐiỂM_HS_LỚP(TênLớp, MãHS, Môn 2 , Điểm) 23 Quan hệ được chuẩn hóa Quan hệ được chuẩn hóa –– Định nghĩa dạng chuẩn 1Định nghĩa dạng chuẩn 1 • Minh họa cho dữ liệu của cấu trúc đã chuẩn hóa: Tên_Lớp SỉSố MãHS TênHS 11A1 30 0001 Nguyễn Văn A 11A1 30 0002 Trần Thị B 11A2 28 0031 Võ Văn C TênLớp MãHS Môn Điểm 11A1 0001 Toán 7 11A1 0001 Lý 9 11A1 0002 Lý 10 11A1 0002 Toán 6 11A1 0001 Văn 7 11A2 0031 Lý 6 DANH_SÁCH_HS ĐiỂM_HS_LỚP 24 Quan hệ được chuẩn hóa Quan hệ được chuẩn hóa –– Định nghĩa dạng chuẩn 1Định nghĩa dạng chuẩn 1 • Các quan hệ trong cấu trúc CSDL được chuẩn hóa như trên gọi là quan hệ ở dạng chuẩn 1 • Định nghĩa dạng chuẩn 1: Một quan hệ ở dạng chuẩn 1 không có các trường lặp và các trường kép, còn được gọi là cấu trúc phẳng. 7 25 Quan hệ được chuẩn hóa Quan hệ được chuẩn hóa –– Định nghĩa dạng chuẩn 1Định nghĩa dạng chuẩn 1 • Cấu trúc chuẩn hóa cho phép truy vấn chỉ dựa trên ngữ nghĩa của CSDL, không dựa vào cách thức lưu trữ thông tin Ví dụ: Cho biết điểm môn Văn của học sinh có mã 0001 lớp 11A1: ĐIỂM_HS_LỚP[TênLớp = ’11A1’, Mã_HS = ‘0001’, Môn = ‘Văn’, Điểm] Với cấu trúc chưa chuẩn hóa, câu truy vấn này sẽ là: DANH_SÁCH_LỚP(11A2)(1,2) (Học sinh có mã 0001 lớp 11A1 được lưu thứ 1 trong danh sách, điểm môn Văn được lưu thứ 2 trong bảng điểm của HS) 26 Quan hệ được chuẩn hóa Quan hệ được chuẩn hóa –– Định nghĩa dạng chuẩn 1Định nghĩa dạng chuẩn 1 • Nhận xét: – Với dạng chuẩn 1, yêu cầu về sự giảm thiểu trùng lắp thông tin chưa được quan tâm – Các vấn đề gây ra do trùng lắp thông tin: Bất tiện khi thêm/cập nhật : để đảm bảo dữ liệu nhất quán, phải kiểm tra và cập nhật hàng loạt trên các thông tin trùng lắp Ví dụ: Thêm một học sinh (11A1, 31, 0003, Võ Thị H) vào danh sách: phải đảm bảo thông tin về sỉ số lớp của các học sinh khác cùng lớp 11A1 cũng phải là 31. Tương tự khi cập nhật. Mất thông tin khi xóa Ví dụ: giả sử ta chỉ mới thêm một học sinh mã 0031 trong lớp 11A2. Khi đó, nếu xóa học sinh này đi, ta sẽ mất thông tin về tên lớp và sỉ số của lớp 11A2 trong CSDL. 27 Quan hệ được chuẩn hóa Quan hệ được chuẩn hóa –– Định nghĩa dạng chuẩn 1Định nghĩa dạng chuẩn 1 • Ví dụ 3.4: Cho quan hệ sau: LỊCH_COI_THI (GV_CT, N,G,P,M,GV) F = {f 1 : GV_CT→N,G,P: một giảng viên coi thi chỉ coi vào một ngày(N), một giờ (G) và trong một phòng(P) duy nhất f 2 : M → GV : mỗi môn thi (M) có một giảng viên (GV) duy nhất phụ trách f 3 :N,G,P→M : mỗi ngày, vào một giờ, trong một phòng, chỉ có một môn thi duy nhất } 28 Quan hệ được chuẩn hóa Quan hệ được chuẩn hóa –– Định nghĩa dạng chuẩn 1Định nghĩa dạng chuẩn 1 • Ví dụ 3.4 (tt): – Một thể hiện của quan hệ LỊCH_COI_THI: – Nhận xét về sự trùng lắp thông tin và những bất tiện khi thêm/ xóa/ cập nhật? GV_CT N G P M GV Nguyễn Văn A 2 8:00 – 10:00 101 Giải thuật X Nguyễn Thị B 2 10:00 – 12:00 101 CSDL Y Trần Văn C 2 10:00 – 12:00 101 CSDL Y Võ Thị D 2 8:00 – 10:00 103 Giải thuật X 8 29 Quan hệ được chuẩn hóa Quan hệ được chuẩn hóa –– Định nghĩa dạng chuẩn 1Định nghĩa dạng chuẩn 1 Cần tách nhỏ quan hệ theo các tiêu chuẩn nghiêm ngặt hơn để giải quyết các vấn đề về trùng lắp thông tin, để CSDL hoạt động hiệu quả hơn 30 Dạng chuẩn 2 (DC2)Dạng chuẩn 2 (DC2) • Một số khái niệm bổ sung – Thuộc tính khóa (không khóa): A là một thuộc tính khóa (không khóa) của Q nếu: A ∈ Q + A có (không có) tham gia vào một khóa của Q Ví dụ 3.5: Q 1 (MNOPX) ; Q 2 (PY) M,N,O là các thuộc tính khóa của Q 1 , P là thuộc tính khóa của Q 2 nhưng là thuộc tính không khóa của Q 1 – Thuộc tính phụ thuộc đầy đủ (không phụ thuộc đầy đủ) vào một tập thuộc tính: A là một thuộc tính phụ thuộc đầy đủ (không phụ thuộc đầy đủ) vào X nếu PTH X → A là một phụ thuộc đầy đủ (không đầy đủ) 31 DC2 DC2 –– Định nghĩaĐịnh nghĩa • Một quan hệ Q ở dạng chuẩn 2 nếu và chỉ nếu tất cả thuộc tính không khóa đều phụ thuộc đầy đủ vào khóa • Ví dụ 3.6: COI_THI (GV_CT, N,G,P); F 1 = {GV_CT→N,G,P} MON_KT(N,G,P,M,GV); F 2 = {N,G,P→M; M →GV} Các quan hệ này có đạt DC2 ? • Ví dụ 3.7: Q(BDCZ) F = {B→C; BD→Z} Q có đạt DC2 ? 32 DC2_Các vấn đề còn tồn tạiDC2_Các vấn đề còn tồn tại • Vẫn còn thông tin trùng lắp. • Các bất tiện trong thao tác thêm/xóa/cập nhật do trùng lắp thông tin gây ra. Các bảng sau minh họa cho dữ liệu của các quan hệ trong ví dụ 3.6 (đều đạt DC2): Nhận xét về sự trùng lắp thông tin và các bất tiện khi thêm/ xoá/ sửa? GV_CT N G P Nguyễn Văn A 2 8:00 – 10:00 101 Nguyễn Thị B 2 10:00 – 12:00 101 Trần Văn C 2 10:00 – 12:00 101 Võ Thị D 2 8:00 – 10:00 103 N G P M GV 2 8:00 – 10:00 101 Giải thuật X 2 10:00 – 12:00 101 CSDL Y 2 8:00 – 10:00 103 Giải thuật X T_COI_THI T_MÔN_KT 9 33 Dạng chuẩn 3 (DC3)Dạng chuẩn 3 (DC3) • Khái niệm bổ sung: Thuộc tính phụ thuộc bắc cầu vào một tập thuộc tính : – A phụ thuộc bắc cầu vào X nếu có 4 điều kiện sau: i. ∃ X→Y ∈ F + ii. Y → A ∈ F + iii. Y → X ∉ F + iv. A ∉ (X ∪Y) 34 DC3 DC3 –– Khái niệm bổ sung (tt)Khái niệm bổ sung (tt) • Ví dụ 3.8 : Cho F = {MN→OPRX; NO →M; P →RY} – P có phụ thuộc bắc cầu vào NO? NO → M ⇒ NO →MN : thỏa (i) MN → P:thỏa (ii) MN → O ⇒ MN →ON : không thỏa (iii) P không phụ thuộc bắc cầu vào NO. – R có phụ thuộc bắc cầu vào NO? NO → MN và MN→P nên NO →P (i) P → R (ii) P → NO ∉ F + (iii) R ∉ NOP R phụ thuộc bắc cầu vào NO 35 Dạng chuẩn 3 (DC 3)Dạng chuẩn 3 (DC 3) • Định nghĩa 1: Q ở DC3 nếu và chỉ nếu tất cả thuộc tính không khóa phụ thuộc đầy đủ và không phụ thuộc bắc cầu vào khóa • Định nghĩa 2: Q ở DC3 nếu và chỉ nếu với mỗi phụ thuộc hàm X→A không hiển nhiên định nghĩa trên Q (A là thuộc tính đơn, X là tập thuộc tính), một trong hai điều kiện sau được thỏa: i. Hoặc X chứa một khóa của Q ii. Hoặc A là thuộc tính khóa của Q 36 DC3 DC3 –– Ví dụVí dụ – Ví dụ 3.9: Xét cấu trúc CSDL ở ví dụ 3.6 được cải tiến để các quan hệ đều đạt DC3: COI_THI (GV_CT , N, G, P) LỊCH_KT(N,G,P ,M) GD(M ,GV) GV_CT N G P Nguyễn Văn A 2 8:00 – 10:00 101 Nguyễn Thị B 2 10:00 – 12:00 101 Trần Văn C 2 10:00 – 12:00 101 Võ Thị D 2 8:00 – 10:00 103 T_COI_THI N G P M 2 8:00 – 10:00 101 Giải thuật 2 10:00 – 12:00 101 CSDL 2 8:00 – 10:00 103 Giải thuật T_LỊCH_KT M GV Giải thuật X CSDL Y T_GD Không còn trùng lắp thông tin 10 37 DC3DC3 Ví dụ Ví dụ Vấn đề còn tồn tại Vấn đề còn tồn tại – Ví dụ 3.10: môi trường ứng dụng của ví dụ 3.9 có thêm một ràng buộc mới: f 4 : M →P Quan hệ LICH_KT có hai khóa (N,G,P) và (N,G,M), vẫn đạt chuẩn 3. Xét thể hiện sau: N G P M 2 8:00 – 10: 00 101 Giải thuật 2 10:00 – 12: 00 101 CSDL 3 8:00 – 10: 00 101 CSDL 2 8:00 – 10: 00 105 CSDL T_LỊCH_KT Thêm: Tạo thông tin trùng lắp Thêm: vi phạm f 4 38 Dạng chuẩn Boy Dạng chuẩn Boy –– Codd Codd –– Kent (DC BCK)Kent (DC BCK) • Định nghĩa: Q ở DC BCK nếu và chỉ nếu: với mỗi PTH không hiển nhiên X → A định nghĩa trên Q thì ∀B ∈ Q +, ta luôn có (X→B) là một PTH thuộc F + . Hay nói cách khác, X chứa một khóa của Q • Ví dụ 3.11: Quan hệ LỊCH_CT với hai khóa ở ví dụ 3.10 không đạt dạng chuẩn BCK vì có PTH M → P. 39 Giới hạn của DC BCKGiới hạn của DC BCK • DC BCK quan tâm giải quyết vấn đề trùng lắp thông tin, nhưng xem nhẹ một tiêu chuẩn khác: sự thuận lợi khi kiểm tra phụ thuộc dữ liệu. • Ví dụ 3.12: Thay đổi cấu trúc CSDL của ví dụ 3.10 để tất cả quan hệ đạt DC BCK: COI_THI(GV_CT , N,G,P) LICH_KT_1(M ,P) ; LICH_KT_2(M,N,G) GD(M ,GV) 40 Giới hạn của DC BCK Giới hạn của DC BCK –– Ví dụ (tt)Ví dụ (tt) – Minh họa thể hiện của các quan hệ: Không còn trùng lắp thông tin, nhưng bất tiện khi kiểm tra PTH N,G,P → M : phải kết LICH_KT_1 và LICH_KT_2 GV_CT N G P Nguyễn Văn A 2 8:00 – 10:00 101 Nguyễn Thị B 2 10:00 – 12:00 101 Trần Văn C 2 10:00 – 12:00 101 T_COI_THI M GV Giải thuật X CSDL Y T_GD P M 101 Giải thuật 101 CSDL T_LỊCH_KT_1 N G M 2 8:00 – 10: 00 Giải thuật 2 10:00 – 12: 00 CSDL T_LỊCH_KT_2 [...]... Thu t toán không quan tâm đ n “ch t lư ng” c a t p ph thu c D ban đ u: D có th ch a các PTH không đ y đ , PTH dư th a – Có m t s nghiên c u đ c i ti n thu t toán phân rã: xây d ng chi n lư c ch n ph thu c đ phân rã hi u qu hơn (b o toàn PTH, ) • Thu t toán không quan tâm đ n vi c xác đ nh khóa c a các quan h con 73 74 Cách ti p c n t ng h p Thu t toán t ng h p • • M c tiêu: T m t lư c đ quan h ph quát... ng d ng c a ví d 3.9 có thêm ph thu c đa tr M →> P Khi đó quan h LICH_KT(N,G,P,M) không đ t DC4 Tách quan h này thành LICH_KT_3(M,P) VÀ LICH_KT_2(M,N,G), ta có các quan h đ u đ t DC 4 • Vì ki m tra ph thu c đa tr r t t n kém (có th kép theo m t chu i hi u ng thêm/xóa), m c tiêu c a DC4 là tách nh các quan h , nh m bi n các ph thu c đa tr thành ph thu c đa tr hi n nhiên 41 Tính ch t l ng nhau c a các... chu n bi u di n tr n v n – C u trúc trong VD 3.17 đ t tiêu chu n b o toàn thông tin, nhưng không b o toàn PTH (PTH f3: N,G,P→ M không còn đư c đ nh nghĩa trên quan h nào) 63 64 16 Cách ti p c n phân rã – Cơ s lý thuy t Cách ti p c n phân rã – Cơ s lý thuy t • Đ i v i ph thu c hàm: • Đ i v i ph thu c hàm và ph thu c đa tr : – Đ nh lý 1: Cho Q = Q1 – Đ nh lý 2: Cho Q2 không m t thông tin... Cách ti p c n phân rã (tt) • Thu t toán phân rã • Vào: D • Ra: ρ = {Qi}, i=1 n ho c C’ = {}, i=1 n • ng d ng đ nh lý 1 và đ nh lý 2, t m t quan h c n phân rã, ta s có cây phân rã nh phân, trong đó, m i c p, m t quan h đư c tách thành hai quan h con Th t c Phân_rã (Q) Q 1 Xác đ nh t p DQ= {d: X →>Y∈D+ | (XY) ⊆ Q+} f/d 2 N u: ∀(d: X →>Y∈DQ ), XY = Q+ thì: ρ :=ρ ∪ {Q} Q1 Q2 f’/d’ Q11 N u không,... các quan h đ đ t DC 4 có th làm cho vi c ki m tra m t s PTH tr nên t n kém hơn (ph i k t trên nhi u quan h ) Q d ng chu n 4 n u và ch n u Q DC BCK và: v i m i ph thu c đa tr (X→> Y) không hi n nhiên đư c đ nh nghĩa trên Q thì ∀ B ∈ Q+ ta luôn có X → B là m t ph thu c hàm thu c F+ Hay nói cách khác, X ch a m t khóa c a Q • Ví d : Môi trư ng ng d ng c a ví d 3.9 có thêm ph thu c đa tr M →> P Khi đó quan. .. thu c hàm đư c ki m tra d dàng trong các Qi, nghĩa là v i m i PTH trong quan h ph quát, ch c n ki m tra PTH này c c b trên quan h Qi 2 Chia PTT thành nh ng nhóm Fi’, i=1 p, m i Fi’ g m nh ng PTH thu c PTT có cùng v trái Các Qi đ t t i thi u DC3 V trái c a các PTH trong m i Fi’ ký hi u là Ki, đó là các khoá ho c siêu khóa c a các quan h con trong tương lai B o toàn ph thu c hàm 75 76 19 Thu t toán t... tính ch t b o toàn thông tin: – Bư c 6: Tìm khóa K0 c a quan h ph quát U Lư c đ k t qu C = {; N u không t n t i Qi có khóa là m t khóa c a U thì: } Thu c tính D không hi n di n trong quan h nào c a c u trúc k t qu • K t qu c a thu t toán không đ m b o tính b o toàn thông tin Thêm vào lư c đ k t qu C m t quan h Qk = U[K0] v i Fk = ∅ Cu i n u – Ví d : trong ví d... Thu t toán phân rã – Nh n xét (tt): • T t c các quan h trong lư c đ k t qu đ u đ t DC4 (n u có ph thu c đa tr ) ho c DC BCK (n u ch có PTH) • Tùy vào cách ch n ph thu c đ phân rã (bư c 3) mà c u trúc k t qu s khác nhau: – Trong ví d 3.20: Ch n theo th t t trên xu ng: k t qu khác nhau tùy theo th t c a D, và h u qu là trong lư c đ k t qu có th ch a nh ng quan h không có ý nghĩa (ví d Q’22) • Phân rã b... u: • 4.1 Tìm PTT’ ⊆ PTT sao cho: (PTT’ ∪ J) ≡ (PTT ∪ J) Cho quan h ph quát c a ví d 3.20 Dùng thu t toán t ng h p đ tìm m t lư c đ C tương ng đ t DC3: 4.2 ∀f ∈ PTT - PTT’ : h y nó ra kh i nhóm Fi mà nó hi n di n 1 PTT = {f1, f2, f3, f4} 4.3 ∀f: Ki→ Kj ∈ J: đưa tr vào Fi 2 Có 4 nhóm F1’ = {f1}; F2’ = {f2}; F3’ = {f3}; F4’ = {f4} 5 T o các quan h con: 3.1 J = ∅ ∀ Fi: 3.2 F1 = {f1, f2}; F2 = {f3, f4}... Phương ti n ki m tra tính b o toàn thông tin 54 B ng Tableau và qui trình thay th đu i • Cho: • B ng Tableau: C1= – Có m c t tương ng v i m thu c tính c a quan h Q và C2 = {}, i=1 n, v i Fi = F+[Qi+] – n dòng tương tương ng v i n quan h con Qi – M iô tr : • B ng Tableau và qui trình thay th đu i đư c s d ng đ ki m tra tính b o toàn thông tin c a C2 dòng i và c t j c a b ng ch a m t trong . D 0 > Thiết kế CSDL mức quan niệm C = <Q j , D j > 2 5 Giả thiết quan hệ phổ quátGiả thiết quan hệ phổ quát • Là nền tảng của các nghiên cứu về mô hình quan hệ và phụ thuộc dữ liệu ứng. đạt được trong quá trình thiết kế CSDL mức quan niệm: – Cấu trúc CSDL kết quả (đầu ra của giai đoạn thiết kế mức quan niệm) cần đạt dạng chuẩn cao nhất – Cấu trúc CSDL kết quả phải tương đương. tin Chương 3 : Thiết kế Cơ sở dữ liệu mức quan niệm 2 Nội dungNội dung • Dẫn nhập- Những mục tiêu chính • Dạng chuẩn • Cấu trúc CSDL tương đương • Hai cách tiếp cận để thiết kế CSDL 3 Dẫn nhậpDẫn