Thu gọn lược đồ quan hệ và ứng dụng

66 1.1K 3
Thu gọn lược đồ quan hệ và ứng dụng

Đ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

Tài liệu tham khảo công nghệ thông tin Thu gọn lược đồ quan hệ và ứng dụng

ĐẠI HỌC THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN NGUYỄN THỊ XUÂN THU THU GỌN LƯỢC ĐỒ QUAN HỆ ỨNG DỤNG LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Thái Nguyên - 2010 ĐẠI HỌC THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN NGUYỄN THỊ XUÂN THU THU GỌN LƯỢC ĐỒ QUAN HỆ ỨNG DỤNG Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 LUẬN VĂN THẠC SỸ CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TSKH NGUYỄN XUÂN HUY Thái Nguyên – 2010 LỜI CẢM ƠN Lời đầu tiên, em xin chân thành bày tỏ lòng cảm ơn kính trọng sâu sắc đối với PGS.TS Nguyễn Xuân Huy, người đã tận tình hướng dẫn em trong suốt quá trình hoàn thành luận văn này. Thầy đã mở ra cho em những vấn đề khoa học rất lý thú, hướng em vào nghiên cứu các lĩnh vực hết sức thiết thực vô cùng bổ ích, đồng thời tạo điều kiện thuận lợi cho em học tập nghiên cứu. Em đã học hỏi được rất nhiều ở Thầy phong cách làm việc, cũng như phương pháp nghiên cứu khoa học… Em luôn được Thầy cung cấp các tài liệu, các chỉ dẫn hết sức quý báu khi cần thiết trong suốt thời gian thực hiện luận văn. Em cũng xin thể hiện sự kính trọng lòng biết ơn đến Quý Thầy Cô trong Khoa Công nghệ thông tin - ĐHTN, những người đã trang bị cho em rất nhiều kiến thức chuyên ngành, cũng như sự chỉ bảo, giúp đỡ tận tình của quý Thầy cô đối với em trong suốt quá trình học tập. Tất cả các kiến thức mà em lĩnh hội được từ bài giảng của các Thầy cô là vô cùng quý giá. Cuối cùng, em xin được cảm ơn các bạn học viên trong lớp Cao học K7, những người đã cung cấp chia sẻ những tài liệu, thông tin quý báu trong suốt quá trình học tập, nghiên cứu để hoàn thành luận văn này. Thái Nguyên, tháng 10 năm 2010 Học viên Nguyễn Thị Xuân Thu MỤC LỤC Trang Trang phụ bìa . Lời cam đoan Lời cảm ơn . Mục lục i Danh mục các ký hiệu, chữ cái viết tắt ii Danh mục hình vẽ iii MỞ ĐẦU 1 Chương 1 CÁC KIẾN THỨC CƠ BẢN VỀ CƠ SỞ DỮ LIỆU 1.1. Khái quát về cơ sở dữ liệu 2 1.2. Phụ thuộc hàm 3 1.3. Lược đồ quan hệ . 7 1.4. Bao đóng của tập thuộc tính . 7 1.5. Phủ của tập phụ thuộc hàm 9 1.6. Khoá của lược đồ quan hệ 14 1.7. Chuẩn hoá LĐQH trên cơ sở PTH . 20 Chương 2 KỸ THUẬT THU GỌN LƯỢC ĐỒ QUAN HỆ 2.1. Định nghĩa kỹ thuật thu gọn LĐQH . 25 2.2. Thuật toán thu gọn LĐQH 25 2.3. Định lý thiết lập công thức biểu diễn bao đóng . 29 2.4. Bổ đề về siêu khoá trong phép thu gọn . 32 2.5. Hệ quả về siêu khoá trong phép thu gọn 33 2.6. Bổ đề về khoá trong phép thu gọn 34 2.7. Định lý thứ nhất về cách biểu diễn khoá 35 2.8. Định lý thứ hai về cách biểu diễn khoá 38 2.9. Lược đồ cân bằng 45 Chương 3 CÀI ĐẶT CHƯƠNG TRÌNH ỨNG DỤNG KỸ THUẬT THU GỌN LƯỢC ĐỒ QUAN HỆ TRONG THIẾT KẾ CƠ SỞ DỮ LIỆU 3.1. Giới thiệu . 52 3.2. Một số giao diện của chương trình . 53 3.3. Hướng dẫn sử dụng 59 KẾT LUẬN KIẾN NGHỊ 1. Kết luận 61 2. Kiến nghị 61 TÀI LIỆU THAM KHẢO . 62 DANH MỤC CÁC KÝ HIỆU, CHỮ CÁI VIẾT TẮT CSDL Cơ sở dữ liệu LĐQH Lược đồ quan hệ LĐCB Lược đồ cân bằng PTH Phụ thuộc hàm LS(F) Tập các vế trái của phụ thuộc hàm RS(F) Tập các vế phải của phụ thuộc hàm 1NF 1st normal form - Dạng chuẩn 1 2NF 2nd normal form - Dạng chuẩn 2 3NF 3rd normal form - Dạng chuẩn 3 FD Phụ thuộc hàm ╞ Suy dẫn lgic ├ Suy dẫn theo quan hệ  Là con  Chứa  Thuộc  Không thuộc  Với mọi X+ Bao đóng của tập thuộc tính X  Tương đương ! Không tương đương  Phép giao  Phép hợp DANH MỤC HÌNH VẼ Hình 3.1. Giao diện chính . 53 Hình 3.2. Giao diện tạo LĐQH mới 54 Hình 3.3. Giao diện ghi dữ liệu . 55 Hình 3.4. Giao diện mở dữ liệu . 56 Hình 3.5. Giao diện xử lý . 57 Hình 3.6. Giao diện help . 58 MỞ ĐẦU Thiết kế các cơ sở dữ liệu lớn phức tạp đòi hỏi nhiều thuật toán hữu hiệu để tính toán các đối tượng như bao đóng, khoá, phản khoá…Một số thuật toán tốt theo nghĩa độ phức tạp giới hạn ở các hàm tuyến tính như : Thuật toán tìm một khoá, thuật toán xác định thành viên, hay thuật toán xác định PTH suy dẫn, thuật toán tìm giao các khoá, thuật toán xác định một lược đồ quan hệ có một khoá duy nhất hay không … Một nhận xét hết sức tự nhiên là nếu kích thước của LĐQH càng nhỏ thì hiệu quả xử lý hay tính toán càng cao. Một số hướng nghiên cứu cho phép tinh giản lược đồ cơ sở dữ liệu đã được thực hiện thông qua phép biến đổi tương đương như đưa tập PTH về dạng thu gọn hoặc thu gọn tự nhiên, dạng không dư, dạng tối ưu… Trong luận văn này, em xin trình bày một kỹ thuật tinh giản khác, đó là “Kỹ thuật thu gọn lược đồ quan hệ”. Bản chất của kỹ thuật này là loại bỏ khỏi LĐQH ban đầu một số thuộc tính không quan trọng theo nghĩa chúng không làm ảnh hưởng đến kết quả tính toán của các đối tượng đang quan tâm như bao đóng, khoá, phản khoá… Mặc dù LĐQH thu được qua phép thu gọn không tương đương với LĐQH ban đầu, nhưng ta có thể thu được các đối tượng cần tìm bằng những phép toán đơn giản như loại bỏ hoặc thêm vào một số thuộc tính. Đặc biệt là sau khi loại bỏ một số thuộc tính thì một số phụ thuộc hàm sẽ được loại bỏ theo, vì chúng trở thành các phụ thuộc hàm tầm thường (có vế trái chứa vế phải) hoặc mang thông tin tiền định. Kỹ thuật này có thể được ứng dụng để giải quyết các bài toán cơ sở dữ liệu phức tạp. Đây là hướng nghiên cứu chính của đề tài. Luận văn được trình bày trong 3 chương: Chương 1: Trình bày các kiến thức cơ bản về cơ sở dữ liệu. Chương 2: Tìm hiểu về kỹ thuật thu gọn lược đồ quan hệ, các định lý cơ bản của phép thu gọn các dạng biểu diễn khoá thông qua phép thu gọn. Chương 3: Cài đặt chương trình. Ứng dụng kỹ thuật thu gọn lược đồ quan hệ trong thiết kế cơ sở dữ liệu. CHƯƠNG I : CÁC KIẾN THỨC CƠ BẢN VỀ CƠ SỞ DỮ LIỆU 1.1 Khát quát về cơ sở dữ liệu Cơ sở dữ liệu (CSDL) là một trong những lĩnh vực được tập trung nghiên cứu phát triển của công nghệ thông tin, nhằm giải quyết các bài toán quản lý, tìm kiếm thông tin trong những hệ thống lớn, đa dạng, phức tạp cho nhiều người sử dụng trên máy tính điện tử. Cùng với sự ứng dụng mạnh mẽ công nghệ thông tin vào đời sống xã hội, kinh tế, quốc phòng .Việc nghiên cứu CSDL đã đang phát triển ngày càng phong phú hoàn thiện. Từ những năm 70, mô hình dữ liệu quan hệ do E.F. Codd đưa ra với cấu trúc hoàn chỉnh đã tạo nên cơ sở toán học cho các vấn đề nghiên cứu lí thuyết về CSDL. Với ưu điểm về cấu trúc đơn giản khả năng hình thức hoá phong phú, CSDL quan hệ dễ dàng mô phỏng các hệ thống thông tin đa dạng trong thực tiễn, tạo điều kiện lưu trữ thông tin tiết kiệm, có tính độc lập dữ liệu cao, dễ sửa đổi, bổ sung cũng như khai thác dữ liệu. Mặt khác, việc khai thác áp dụng các kĩ thuật tổ chức sử dụng bộ nhớ cho phép việc cài đặt các CSDL quan hệ đưa lại hiệu quả cao làm cho CSDL quan hệ chiếm ưu thế trên thị trường. Mô hình dữ liệu quan hệ đặt trọng điểm hàng đầu không phải là khai thác các tiềm năng của máy mà ở sự mô tả trực quan dữ liệu theo quan điểm của người dùng, cung cấp một mô hình dữ liệu đơn giản, trong sáng, chặt chẽ, dễ hiểu tạo khả năng tự động hoá thiết kế CSDL quan hệ. Có thể nói lí thuyết thiết kế cài đặt CSDL, nhất là mô hình dữ liệu quan hệ đã phát triển ở mức độ cao đạt được những kết quả sâu sắc. Hàng loạt vấn đề đã được nghiên cứu giải quyết như: - Lý thuyết thiết kế CSDL, các phương pháp tách tổng hợp các lược đồ quan hệ theo tiêu chuẩn không tổn thất thông tin hay bảo toàn tính nhất thể của các ràng buộc trên dữ liệu . - Các loại ràng buộc dữ liệu, cấu trúc các tính chất của chúng, ngữ nghĩa khả năng áp dụng phụ thuộc dữ liệu ví dụ như phụ thuộc hàm, phụ thuộc đa trị, phụ thuộc kết nối, phụ thuộc lôgic . - Các vấn đề tối ưu hoá: ở mức vật lí trong việc tổ chức quản lí các tệp; ở mức đường truy nhập với các tệp chỉ số hay các danh sách sắp xếp; ở mức lôgic trên cơ sở rút gọn các biểu thức biểu diễn các câu hỏi…. Trong luận văn này, em sẽ trình bày một số kiến thức cơ bản nhất về CSDL bao gồm các kiến thức liên quan đến phụ thuộc hàm, khoá, các dạng chuẩn đặc biệt là đi sâu tìm hiểu kỹ thuật thu gọn lược đồ quan hệ cũng như các thuật toán để áp dụng chúng vào việc xây dựng thiết kế các bài toán CSDL hiện nay. 1.2 Phụ thuộc hàm 1.2.1 Định nghĩa phụ thuộc hàm Cho tập thuộc tính U. Giả sử X, Y  U. Một phụ thuộc hàm (PTH) trên U là biểu thức dạng f: X  Y. [...]... hai khoá A C đều chỉ có một thu c tính nên các thu c tính không khoá khác là B D đều phụ thu c đầy đủ vào hai khoá này Vậy a ở 2NF CHƯƠNG II: KỸ THU T THU GỌN LƯỢC ĐỒ QUAN HỆ 2.1 Định nghĩa kỹ thu t thu gọn LĐQH Cho hai LĐQH p = (U,F), q = (V,G) tập thu c tính M  U Ta nói LĐQH q nhận được từ LĐQH p qua phép thu gọn theo tập thu c tính M, nếu sau khi loại bỏ mọi xuất hiện của các thu c tính... được khóa của lược đồ q Key (q)={B,D,E,H} Để thu được Key(p), ta thêm thu c tính C vào khoá của lược q Ta được Key (p) = {BC, DC, EC, HC} 2.3 Định lý thiết lập công thức biểu diễn bao đóng của tập thu c tính theo phép thu gọn lược đồ quan hệ Cho LĐQH a=(U,F) hai tập con rời nhau X Y trong U Khi đó (XY)+F = XY+F\X Chứng minh Đặt V=U\X G=F\X Do XY= X không xuất hiện trong V G nên theo... (F) ; // Tập thu c tính của F G : = F; For each FD g : L R in F do If R  Closure (U,G\{g},L) G := G\{g}; Endif; Endfor; Return G; End Nonredundant then 1.5.3 Phủ thu gọn Cho hai tập PTH F G trên tập thu c tính U G được gọi là phủ thu gọn của F nếu G đồng thời là phủ thu gọn trái thu gọn phải của F  Thu t toán tìm phủ thu gọn của tập PTH Algorithm Reduced Funtion: Tính phủ thu gọn của tập PTH... (U,F) được gọi là lược đồ ở dạng chuẩn 2 (2NF) nếu p là lược đồ 1NF mọi thu c tính không khoá phụ thu c đầy đủ vào mọi khoá +  A  U0,  K  Key (p): K  A c Dạng chuẩn 3 (3NF) LĐQH p = (U,F) được gọi là lược đồ ở dạng chuẩn 3 (3NF) nếu p là lược đồ 1NF mọi thu c tính không khoá đều phụ thu c trực tiếp vào mọi khoá *  A  U0,  K  Key (p): K  A LĐQH p = (U,F) được gọi là lược đồ ở dạng chuẩn... ta nói tập thu c tính Y phụ thu c hàm vào tập thu c tính X, hoặc tập thu c tính X xác định hàm tập thu c tính Y Cho quan hệ R(U) một PTH f: X  Y trên U Ta nói quan hệ R thỏa PTH f (hay PTH f đúng trong quan hệ R), ký hiệu R(f), nếu hai bộ tùy ý trong R giống nhau trên X thì cũng giống nhau trên Y, tức là R(X  Y)  u,v  R: u.X = v.X  u.Y = v.Y Cho quan hệ R(U) tập PTH F trên tập thu c tính... là lược đồ 1NF mọi PTH không tầm thường X  A, A là thu c tính không khoá đều cho ta X là một siêu khoá +  (X  A, A  U0 \ X)  X = U d Dạng chuẩn BCNF (Boyce - Codd) LĐQH p = (U,F) được gọi là lược đồ ở dạng chuẩn BCNF nếu p là lược đồ 1NF mọi thu c tính đều phụ thu c trực tiếp vào mọi khoá *  A  U,  K  Key (p): K  A LĐQH p = (U,F) được gọi là lược đồ ở dạng chuẩn BCNF nếu p là lược đồ. .. BC} Ta nhận thấy phép thu gọn thoả tính hợp thành giao hoán, cụ thể nếu p là LĐQH trên tập thu c tính U X, Y là hai tập con rời nhau của U thì p\XY = (p\X)\Y = (p\Y)\X  Ví dụ 3 : Cho LĐQH p = (U,F), U = ABCDEH F= {AE  D, BC  E, E  BC } Để tìm tập khoá Key (p) của lược đồ p chúng ta xây dựng một lược đồ q bằng cách xoá khỏi lược đồ p các thu c tính A,D,H Ta thu được lược đồ q = (V,G) trong đó:... luật F1, F2, F3 của hệ tiên đề Arsmtrong sau hữu hạn lần ta sẽ thu được PTH f 1.2.4.2 Suy dẫn theo quan hệ Cho tập PTH F trên tập thu c tính U f là một PTH trên U Ta nói PTH f được suy dẫn theo quan hệ từ tập PTH F, ký hiệu F├ f, nếu mọi quan hệ R(U) thỏa F thì R cũng thỏa f F├ f  SAT(F)  SAT(f) Ký hiệu SAT(F) là tập toàn thể các quan hệ trên U thỏa tập PTH F Cho tập thu c tính U tập PTH F trên... EH} = {DE, EIH} Ta dễ dàng suy ra Key (q) =  Để thu được Key (p), ta chỉ cần thêm vào Key (q) các thu c tính vừa thu gọn ABC Ta được Key (p) =ABC  Ví dụ 5 : Cho LĐQH p = (U,F) Với tập thu c tính U =ABCDEH Tập PTH F = {AB  C, C  A, BC  D, ACD  B, D  EH, BE  C, CH  BD, CE  CH} Tìm Key(p)? Ta thu gọn lược đồ quan hệ p theo thu c tính C Thu được LĐQH: q = p\C = (V,G) V = ABDEH G = {AB  ... nếu sau khi loại bỏ mọi xuất hiện của các thu c tính của M trong lược đồ p thì thu được lược đồ q Nếu sau khi thực hiện phép thu gọn theo M cho LĐQH p ta thu được LĐQH q thì ta viết q = p\M Thao tác loại bỏ M được thực hiện trên lược đồ p = (U,F) để thu được lược đồ q = (V,G) như sau: 1 Tính V = U\M có độ phức tạp O(n) với n là số lượng thu c tính trong U 2 Mỗi PTH XY trong F ta tạo ra PTH X\MY\M cho . thu t thu gọn lược đồ quan hệ, các định lý cơ bản của phép thu gọn và các dạng biểu diễn khoá thông qua phép thu gọn. Chương 3: Cài đặt chương trình. Ứng. Phủ thu gọn Cho hai tập PTH F và G trên tập thu c tính U. G được gọi là phủ thu gọn của F nếu G đồng thời là phủ thu gọn trái và thu gọn phải của F.  Thu t

Ngày đăng: 23/11/2012, 09:35

Hình ảnh liên quan

Hình 3.5. Giao diện xử lý ................................................................................ - Thu gọn lược đồ quan hệ và ứng dụng

Hình 3.5..

Giao diện xử lý Xem tại trang 7 của tài liệu.
Hình 3.1. Giao diện chính - Thu gọn lược đồ quan hệ và ứng dụng

Hình 3.1..

Giao diện chính Xem tại trang 57 của tài liệu.
Hình 3.2. Giao diện tạo LĐQH mới - Thu gọn lược đồ quan hệ và ứng dụng

Hình 3.2..

Giao diện tạo LĐQH mới Xem tại trang 58 của tài liệu.
Hình 3.3. Giao diện tạo ghi dữ liệu - Thu gọn lược đồ quan hệ và ứng dụng

Hình 3.3..

Giao diện tạo ghi dữ liệu Xem tại trang 59 của tài liệu.
Hình 3.4. Giao diện tạo mở dữ liệu - Thu gọn lược đồ quan hệ và ứng dụng

Hình 3.4..

Giao diện tạo mở dữ liệu Xem tại trang 60 của tài liệu.
Hình 3.4. Giao diện xử lý - Thu gọn lược đồ quan hệ và ứng dụng

Hình 3.4..

Giao diện xử lý Xem tại trang 61 của tài liệu.
Hình 3.4. Giao diện Help - Thu gọn lược đồ quan hệ và ứng dụng

Hình 3.4..

Giao diện Help Xem tại trang 62 của tài liệu.

Từ khóa liên quan

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

Tài liệu liên quan