Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 71 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
71
Dung lượng
0,96 MB
Nội dung
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN THỊ DUNG CÁC DẠNG BIỂU DIỄN KHÓA TRONG LƯỢC ĐỒ QUAN HỆ LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Thái Nguyên – 2012 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG NGUYỄN THỊ DUNG KEY REPRESENTATIONS IN RELATIONAL SCHEMATA Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH NGƯỜI HƯỚNG DẪN KHOA HỌC PGS TSKH NGUYỄN XUÂN HUY Thái Nguyên - 2012 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn i LỜI CẢM ƠN Lời đầu tiên, em xin bày tỏ lịng cảm ơn kính trọng sâu sắc Thầy PGS.TSKH Nguyễn Xuân Huy, người tận tình hướng dẫn em suốt trình làm luận văn Thầy giúp em hiểu tiếp cận vấn đề khoa học lý thú, hướng em vào nghiên cứu lĩnh vực thiết thực bổ ích Em học hỏi nhiều Thầy phong cách làm việc, phương pháp tiếp cận tri thức Em Thầy bảo tận tình suốt trình làm luận văn Em xin thể kính trọng biết ơn đến Quý Thầy Cô ĐHCNTT-TT, trang bị cho chúng em đầy đủ sở vật chất tài liệu chuyên ngành Cuối em xin cảm ơn bạn học viên lớp Cao học K9A, người bên cạnh cung cấp thông tin quý báu suốt trình học tập, nghiên cứu để hoàn thành luận văn Thái Nguyên, tháng 06 năm 2012 Học viên Nguyễn Thị Dung Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ii LỜI CAM ĐOAN Tôi xin cam đoan, luận văn kết tự thân tơi tìm hiểu, nghiên cứu Các tài liệu tham khảo trích dẫn thích đầy đủ Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn iii MỤC LỤC Trang Lời cảm ơn i Lời cam đoan ii Mục lục iii Danh mục kí hiệu, chữ viết tắt v Danh mục hình vẽ vi MỞ ĐẦU Chƣơng I: CÁC KIẾN THỨC CƠ BẢN VỀ CƠ SỞ DỮ LIỆU 1.1 Khái quát sở liệu quan hệ 1.2 Lược đồ quan hệ 1.3 Phụ thuộc hàm .7 1.3.1 Định nghĩa phụ thuộc hàm 1.3.2 Hệ tiên đề Armstrong 1.3.3 Bao đóng tập phụ thuộc hàm 1.4 Bao đóng tập thuộc tính 1.5 Khóa lược đồ quan hệ 11 1.5.1 Cách tính giao khóa .14 1.5.2 Thuật tốn tìm khóa LĐQH 15 1.5.3 Các ví dụ 16 Chƣơng II: THU GỌN LƢỢC ĐỒ QUAN HỆ Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 21 iv 2.1 Định nghĩa kỹ thuật thu gọn LĐQH 22 2.2 Thuật toán thu gọn LĐQH 23 2.3 Các ví dụ 23 2.4 Bổ đề siêu khóa phép thu gọn LĐQH 25 2.5 Hệ siêu khóa phép thu gọn LĐQH 26 2.6 Bổ đề khóa phép thu gọn LĐQH 27 Chƣơng III: CÁC DẠNG BIỂU DIỄN KHOÁ TRONG 29 LƢỢC ĐỒ QUAN HỆ 3.1 Dạng biểu diễn thứ khoá 29 3.1.1 Các ví dụ .30 3.1.2 Hệ phép thu gọn LĐQH 35 3.2 Dạng biểu diễn thứ hai khoá 35 3.2.1 Các ví dụ .36 3.2.2 Định nghĩa tập vế trái cực tiểu .42 3.2.3 Bổ đề vế trái cực tiểu 42 3.2.4 Bổ đề khóa sinh từ khóa lược đồ .45 3.2.5 Bổ đề 48 3.3 Giới thiệu 50 3.4 Một số giao diện chương trình .52 3.5 Các ví dụ 56 TÀI LIỆU THAM KHẢO 60 Kết luận 59 Kiến nghị 59 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn v DANH MỤC CÁC KÍ HIỆU, CHỮ CÁI VIẾT TẮT CSDL Cơ sở liệu LĐQH Lược đồ quan hệ PTH Phụ thuộc hàm FD Phụ thuộc hàm Thuộc Là Chứa ╞ Suy dẫn logic ├ Suy dẫn theo quan hệ SAT(F) Là tập toàn thể quan hệ U thỏa tập PTH F X+ Bao đóng tập thuộc tính X \ Phép trừ logic Phép giao Phép hợp ≡ Tương đương !≡ Không tương đương ≠ Khác Với LS(F) Tập vế trái phụ thuộc hàm F RS(F) Tập vế phải phụ thuộc hàm F Số hóa Trung tâm Học liệu – Đại học Thái Ngun http://www.lrc-tnu.edu.vn vi DANH MỤC HÌNH VẼ Hình 3.4.1 Giao diện 52 Hình 3.4.2 Giao diện nhập thuộc tính 53 Hình 3.4.3 Giao diện nhập PTH 53 Hình 3.4.4 Giao diện dạng thứ biểu diễn khóa 54 Hình 3.4.5 Giao diện dạng thứ hai biểu diễn khóa 55 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn vii Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 47 V = ABCD\CD = AB, F= {A B, Ø Ø} Dễ dàng thấy khóa q, Kq={A} Kết hợp với tập vế trái cực tiểu Ta có : Key(p)={ AC } Vậy kết hợp trường hợp p có khóa Key(p) = {AC} Ta có khóa K = AC chứa đồng thời hai vế cực trái cực tiểu A C Ví dụ 3: Cho lược đồ quan hệ p = (U,F) U = ABCDE F = {DE A, B C, E AD} Ta có ML(F) = { B, E} - Trường hợp 1: Xét B ML(F) Ta thấy B+ = BC U Vậy B khơng phải khóa p Ta thu gọn p theo B+ Đặt q = p\B+ = (V,G), ta có: V = ABCDE\BC = ADE, F= {DE A, Ø Ø (loại), E AD } Dễ dàng thấy khóa q, Kq={E} Kết hợp với tập vế trái cực tiểu Ta có : Key(p)={ BE } - Trường hợp 2: Xét E ML(F) Ta thấy E+ = ADE U Vậy E khơng phải khóa p Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 48 Ta thu gọn p theo E+ Đặt q = p\E+ = (V,G), ta có: V = ABCDE\ADE = ADE, F= {Ø Ø , B C, ØØ } Dễ dàng thấy khóa q, Kq={B} Kết hợp với tập vế trái cực tiểu Ta có : Key(p)={ BE } Vậy kết hợp trường hợp p có khóa Key(p) = {BE} Ta có khóa K = BE chứa đồng thời hai vế cực trái cực tiểu B E Vậy ta thấy tồn taị LQĐH có khóa chứa vài vế trái cực tiểu 3.2.5 Bổ đề Cho LĐQH p = (U,F) vế trái cực tiểu L Khi M Key(p\L+), khóa K chứa LM phải chứa M Chứng minh Ta biết LM siêu khóa Giả sử K khóa p K LM Ta xét phân hoạch K = P|Q, P = K L, Q = K M Vì L M = L+ M = Ø Nên P Q = Ø Theo bổ đề siêu khóa phép thu gọn LĐQH ta có K\L+ = K\L = K\L = PQ\L = Q siêu khóa cuả a\L+ Do đó, theo tính chất tối tiểu khóa ta phải có Q = M, hay K M Bổ đề cho phép ta xây dựng thuật tốn GetKey nhận khóa từ tập + LM L Key(p\L ) với L vế trái cực tiểu LĐQH nguồn p Trước hết ta để ý LM siêu khóa cuả LĐQH p Như vậy, để tìm khóa từ LM, ta cần xét để loại bỏ phần tử vế trái cực tiểu L, M chứa khóa a có LM Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 49 Thuật tốn Algorithm Getkey //Tìm khóa từ LM Format: GetKey Input: (U, F, L, M) - Vế trái cực tiểu L LĐQH p = (U,F) - M Key (p\L+) Output: - Khóa K lược đồ pchuwas LM Method K : = L M; For each attribute A in L If A Closure (K\A,F) then K : = K\A; Endif Endfor Return K; EndGetKey Ví dụ : Cho LĐQH p = (U,F) Với U = ABCDEHG F = {DE G, H C, E A, CG H, DG EA, D B} Tìm Key (p)? Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 50 Ta có vế trái cực tiểu ML(F) = {D, E, H, CG} Tính D+ = DB; E+ = EA; H+ = HC; CG+ = CGH -Với L = D ta có: q = p\L+ = p\DB = (ACEHG, {E G, H C, CG H, G EA}) Ta dễ dàng tính M = Key(b) = {GH, CE, HE} Suy : Key(p) = LM = {DGH, DCE, DHE} - Với L = E ta có: q = p\L+ = p\EA = (BCDHG, {D G, H C, Ø Ø (loại), CG H, DG Ø (loại), D B}) = (BCDHG, D BG, H C, CG H}) Ta dễ dàng tính M = Key(q) = {CD, DH} Suy : Key(p) = LM = {ECD, EDH} - Với L = H ta có: q = p\L+ = p\HC = (ABDEG, {DE G, Ø Ø (loại), E A, G Ø (loại), DG EA, D B}) = (ABDEG, {DE G, E A, DG EA, D B}) Ta tìm M = Key(q) = {DG, DE} Suy : Key(p) = LM = {HDG, HDE} -Với L = CG, ta có: q = p\L+ = p\CGH = (ABDE, {DE Ø (loại), Ø Ø (loại), E A, Ø Ø (loại), D EA, D B}) = (ABDE, {E A, D EAB}) Ta tìm M = Key(q) = D Suy : Key(p) = LM = CGD Như ta có: Key(p) = {DGH, DCE, DEH, CGD} 3.3 Giới thiệu Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 51 Trong luận văn này, em tập trung nghiên cứu hai dạng biểu diễn khóa lược đồ quan hệ Việc cài đặt chương trình ứng dụng nhằm mục đích mô kết nghiên cứu học viên Chương trình có giao diện đơn giản, dễ hiểu, dễ sử dụng viết ngôn ngữ C#, ngôn ngữ hướng đối tượng phổ biến cho phép tạo giao diện nhanh dễ dàng Chương trình cho phép nhập thuộc tính tập PTH LĐQH, cho phép thực cập nhật, thay đổi LĐQH qua thao tác thêm/xóa thuộc tính hay PTH Các chức chương trình bao gồm: Nhập thuộc tính PTH, đưa dạng biểu diễn khóa LĐQH Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 52 3.4 Một số giao diện chƣơng trình Giao diện chương trình Hình 3.4.1 Giao diện Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 53 - Giao diện nhập thuộc tính LĐQH Hình 3.4.2 Giao diện nhập thuộc tính - Giao diện nhập PTH LĐQH Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 54 Hình 3.4.3 Giao diện nhập PTH - Giao diện tìm dạng biểu diễn thứ khóa Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 55 Hình 3.4.4 Giao diện tìm biểu diễn dạng khóa - Giao diện tìm dạng biểu diễn thứ hai khóa Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 56 Hình 3.4.5 Giao diện tìm biểu diễn dạng khóa Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 57 3.5 Các ví dụ 3.5.1 Ví dụ 1: (Tìm dạng biểu diễn thứ khóa) Cho LĐQH p = (U,F) U = ABCDEFG F = {ABC DE, BCD G, ABF EG CE FG} Ta tính U1 = U\DEFG = ABC Ta thu gọn lược đồ a theo ABC ta được: LĐQH q = (V,G) V = U\ABC = DEFG G ={ Ø DE, D G, F EG E FG} Ta tính Key(q) = Ø Vậy Key(p) = ABC Key(q) = ABC Với lược đồ ta tính UK = ABC U0 = U\UK = ABCDEFG\ABC = DEFG Đặt c = p\DEFG = (P,W) ta có P = U\DEFG = ABC W = F\DEFG = { ABC Ø , BC Ø, AB Ø C Ø} Suy Key(c) = ABC Theo định lý thức cách biểu diễn khóa Key (p) = Key (c) =ABC Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 58 Kết luận Key(p) = Key (c) = ABC Key(q) =ABC 3.5.2 Ví dụ 2: (Tìm dạng biểu diễn thứ hai khóa) Cho lược đồ quan hệ p = (U, F) U = ABCD F = {AD BC, B A, D C} Ta có ML(F) = {D, B} - Trường hợp 1: Xét D ML(F) Ta thấy D+ = CD U Vậy D khơng phải khóa p Ta thu gọn p theo D+ Đặt q = p\D+ = (V,G), ta có: V = ABCD\CD = AB, F= {A B, B A, Ø Ø (loại), } Dễ dàng thấy khóa Kq ={A, B} Kết hợp với vế trái cực tiểu L= D LĐQH p có khóa Key(p) = {AD, BD} Trường hợp 2: Xét B ML(F) Ta thấy B+ = AB U Vậy B khóa p Ta thu gọn p theo B+ Đặt q = p\B+ = (V,G), ta có: V = ABCD\AB = CD, F= {D C, Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 59 Ø Ø (loại), D C, } Dễ dàng thấy khóa Kq ={D} Kết hợp với vế trái cực tiểu L= B LĐQH p có khóa Key(p) = {BD} Vậy kết hợp trường hợp p có khóa Key(p) = {AD, BD} Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 60 KẾT LUẬN VÀ KIẾN NGHỊ Kết luận: Những nội dung giải luận văn + Lý thuyết: - Phân tích thuật tốn tìm khóa - Tìm hiểu kỹ thuật thu gọn LĐQH - Phát biểu chứng minh kết dạng thứ biểu diễn khóa - Phát biểu chứng minh kết dạng thứ hai biểu diễn khóa + Thực nghiệm: - Nạp cập nhật liệu, thuộc tính PTH - Dạng biểu diễn thứ khóa - Dạng biểu diễn thứ hai khóa Kiến nghị - Vận dụng dạng biểu diễn khóa LĐQH thiết kế sở liệu có tính thực tiễn cao - Tiếp tục xây dựng hoàn thiện phần mềm hỗ trợ thiết kế kỹ thuật thu gọn LĐQH để tìm cách biểu diễn khóa có hiệu Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 61 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Nguyễn Xuân Huy, Đoàn Văn Ban, Đàm Gia Mạnh, Nguyễn Thế Dũng (2001), Về mối liên hệ suy diễn phụ thuộc hàm suy diễn logic, Tạp chí Tin học điều khiển học [2] Nguyễn Xuân Huy (2006), Các phụ thuộc logic sở liệu, Viện KH&CN VN, NXB Thống kê [3] Vũ Đức Thi (1997), Cơ sở liệu: Kiến thức thực hành, NXB Thống kê [4] Lê Tiến Vương (1999), Nhập môn sở liệu quan hệ, NXB Thống kê [5] Một số thông tin Website http://tailieu.vn Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ... thiết kế sở liệu quan hệ dùng hệ thống thơng tin, cụ thể là: - Tính bao đóng tập thuộc tính - Tìm khóa lược đồ quan hệ - Thu gọn lược đồ quan hệ - Các dạng biểu diễn khóa lược đồ quan hệ Phƣơng pháp... biểu diễn khóa lược đồ quan hệ qua thuật tốn thu gọn lược đồ quan hệ theo thuộc tính khóa hay giao khóa tập vế trái cực tiểu Như theo nhận xét tự nhiên dịch chuyển lược đồ quan hệ kích thước nhỏ... thuộc tính 1.5 Khóa lược đồ quan hệ 11 1.5.1 Cách tính giao khóa .14 1.5.2 Thuật tốn tìm khóa LĐQH 15 1.5.3 Các ví dụ 16 Chƣơng II: THU GỌN LƢỢC ĐỒ QUAN HỆ Số hóa Trung