Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 124 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
124
Dung lượng
9,38 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TÊN ĐỀ TÀI M Ô H ÌN H C SỞ D Ữ L IỆ U Q U A N H Ệ V À M Ơ H ÌN H C O SỞ D Ữ L IỆ U H Ư Ớ N G Đ Ó I T Ư Ợ N G ( Báo cáo tổng hợp Đề tài nghiên cứu khoa học đo Khoa quản lý cấp DI 1QG Hà nội) Mã số:QC.04.06 Chủ nhiệm đề tài: TS NGUYỄN TUỆ ĐAI H O C -C J.lv , ỳ i A H Á M( T R U N G T Ẩ M T H Õ N G Tlfv1 T h Pl ' Hà nội - 2005 /;t I Phần mở đầu Muc luc STT Tên mục Phần mở đầu Những nội dung Phu luc Phu luc Phu luc Phiêu đăng ký kêt nghiên cứu Trang Giải thích chữ viết tắt: CSDL : Cơ sở liêu HQTCSDL: hệ quản trị sở liệu OODB : Cơ sở liệu hướng đối tượng OOPL : Ngơn ngữ lập trình hướng đối tượng CSDLPT: Cơ sở liệu phân tán Danh sách người tham gia thực đề tài: STT Ho tên Nguyên Tuệ Đoàn văn Ban Lê Minh Lý Anh Tuân D Phương Hạnh Học hàm, họcvị TS PGD.TS ThS Thực tập sinh Thực tập sinh Cơ quan côn tác Khoa CNTT, Đai học CN Viện CNTT Quỏc ẹ,ia Khoa CNTT, Đại học CN Khoa CNTT, Đại hoc CN Khoa CNTT, Đại học CN Danh mục bảng số liệu: không Tóm tắt kết đề tài: Tên đề tài:Mơ hình sở liệu quan hệ mơ hình sở liệu hưóng đối tượng M ã số: QC.04.06 Chủ trì đề tài: TS Nguyễn Tuệ Những kết chính: a) Kết khoa học( dóng góp đê tài, cơng trình khoa học cỏna bố): Có ba báo cáo hội nghị lchoa họa hội thảo quôc gia Tài liệu tham khảo sỏ' liệu hướng đối tượng Tài liệu tham khảo sờ liệu phân tán b) Kết phục vụ thực tể ( sản phấm công nghệ, khả áp dụng thực tế): Những tài liệu tham khảo đề tài đưọ’c sử dụng làm chuyên đề giảne dạy c) Kết đào tạo ( số lượng sinh viên, học viên cao học, nghiên cứu sinh làm việc đề tài): * Có ba luận văn cao học bảo vệ 15 khóa luận tốt nghiệp sinh viên d) Kêt nâng cao tiềm lực khoa học (nâng cao trình độ cán tăng cưịng trang thiêt bị cho đơn vị): Các cán nghiên cứu đề tài có hiếu biết thêm vê sở liệu hướng đối tượng sở liệu phân tán e) Tỉnh hình sử dụng kinh phí: Đề tài cấp kinh phí 30 triệu đồng Đã đưọc sử đụng đế xây trả tiền viết tài liệu, báo cáo khoa học, mua văn phòng phẩm, đánh máy, photocopy Chủ nhiệm đề tài TS Nguyễn Tuệ Xác nhận đơn vị Xác nhận quan chủ quản T Ó M T Ắ T B Ằ N G T IÉ N G A N H P ro je c t N am e: R elatio n al D atab ase M odel and O b ject O riented D atabase M odel Number: QC.04.06 Project O w ner : Dr Nguyễn Tuệ Department o f Information Systems Faculty o f Information Technology Main results: 1- Document o f Object Database Model This includes two section: a) Concepts for Object-Oriented Database b) Object Database Standards, Languages and Desien 2- Docum ent o f Distributed Database, including three section: a) Distributed Databases: An Overview b) Levels o f Distribution Transparency c) Distributed Database Design d) Transforming global queries into fracment queries 3- Three M aster thesis: a) Hoàng thị Hương Thơm: Object Oriented Database and Softvvears for developpement Object Oriented Database 2005 b) Cao M inh Tâm: Database Security , 2005 c) Đào Thị Thu Vân: Query Proccessing and Transaction Management, 2005 _ 4- Finance : 30.000.000 VND II PHẦN NỘI DUNG CHÍNH Đặt vấn đề Cơ sở liệu m ột môn học sở ngành Công nghệ thông tin Đây môn học có ý nghĩa lớn việc ứng dụng công nghệ thông tin vào thực tiễn Cơ sỏ liệu hướng đối tượng sở liệu phân tán mơ hỉnh cịn nghiên cứu nước ta Mục tiêu đề tài nghiên cứu lý thuyết co so liệu hướng đối tượng sở liệu phân tán, đồng thịi tìm kiếm phần mềm cài đặt để thể Tổng quan vấn đề nghiên cứu a) Cơ sở liệu hướng đối tượng: ì,à ột cách tiếp cận xây dựng CO' sỏ' liệu dựa khái niệm hướng đối tượng Tru g tài chúng tơi tìm hiếu khái niệm co sở liệu hướng đối tưọ '1 P tìm hiểu chuẩn hệ quản trị sỏ' liệu hướng đối tượng (chuẩn ODMGj Trên sỏ' đó, chúng tơi tiến hành xây c!ựn2, thử nghiệm sở liệu hướng đối tượng, dựa phàn mềm lấy xuốnL' từ Internet ( phần mềm Object Store ) b) Cơ sở liệu phân tán : Có thể nói, sở liệu phân tán ứng dụng CO’ sở liệu quan hệ kết hợp với mạng máy tính Để thiết kế CO’ sơ liệu phân tán, trước hết phải thiết kế sỏ' liệu quan hệ tập trung, sail dỏ thiết kế phân đoạn định vị liệu Trong đề tài tập trung nghiên cửu khái niệm sở liệu phân tán, thiết kế phân đoạn thiết kế định vị CO' sở liệu phân tán Ngồi đề tài cịn đề cập đến cách viết truy vấn tronc sớ liệu phân tán, cách thực truy vấn tối ưu truy vấn Do chua tìm pần mềm hệ quản trị sở liệu phân tán ( phàn mềm đẩt, khả kinh phí đề tài khơng đủ), việc cài đặt thử nghiệm chưa tiến hành dược Địa điểm thời gian phương pháp nghiên cứu: Đề tài thực môn Các hệ thống thông tin, Khoa Công nghệ thơng till Phương pháp nghiên cứu: Đọc tìm hiếu tài liệu, Xeminar trĩnh bày vấn đề nghiên cứu, thảo luận viết tài liệu tham khảo, báo cáo khoa học Nội dung nghiên cứu : Phần 1: Cơ sở liệu hướng đối tượng a) Các khái niệm b) Chuẩn ỌDMG c) Phần mềm Object Store d) Cài đặt thử nghiệm Phần 2: Cơ sở liệu phân tán a) Các khái niệm mơ hình CSDL phân tán b) Thiết kế phân đoạn sỏ' liệu phân tán c) Thiết kế định vị sở liệu phân tán đ) Chuyển đổi truy vấn toàn cục thành truy vàn đoạn tối ƯU truv vấn Thảo luận Cơ sở liệu hướng đối tượng CO’ sở liệu phân lán hai mơ hình CO’ sơ liệu cỏ ý nghĩa lý luận thực tiễn cao Việc nghiên cứu, triêỉi khai ứng dụng hai mơ hình địi hỏi tập trung nhân lực, thời gian kinh phí lớn Những vân đê vê sở đê cập đên đê tài , nhiên việc cài đặt thứ nghiệm việc xây đựng hệ thống phần mềm thương mại chưa có khả năna đè làm Kết luận kiến nghị Đê nghị cho phép tiếp tục nghiên cứu vân đê đặt tron đê tài II TÀI LIỆU THAM KHẢO [1] R Elmasri and s Navathe, ‘Fundamentals o f Database System s’, 3rd eđ., pp 359-363 [2] K Pentayya, ‘Object Oriented Database (OODB)’, Oct, 2002 [3] Bloor Research, ‘ObjectStore from Progress Softw are’, 2005 [4] S Clarke, ‘Object Design: Object Store’, May, 2001 [5] http://www.objectstore.com [6 ] http://www.progress.com [7] Hector Garcia-Molina, Jeffrey D.Ullman, Jennifer Widom Database System: The complete Book Prentice-Hall.Inc, 2002 [ ] James A.Anderson Discrete Mathematics with combinatorics.Prcntice-Hall.Inc, 2001 [9] Stefano Ceri, Giuseppe Pelagatti Distributed Databases Principles and Systems McGraw-Hill Book Co 1985 [10] M Tamer Ozsu, Patrick Valduriez: Principles o f Distributed Database Systems Prentice Hall,Inc 1991 III PH Ụ L Ự C Phan bao gồm: Phụ lục 1: Tài liệu sở liệu hướng đối tượng Phụ lục 2: Tài liệu sở liệu phân tán Phụ lục 3: Photocopy báo cáo khoa học Phụ lục 4: Photocopy số trang bìa luận văn thạc sỹ bảo vệ Phụ lục 1: c s D Ữ LIỆU HƯỚNG ĐỐI TƯỢNG (T ài liệu tham khảo) 1-Mở đầu Các sở liệu truyền thống CSDL quan hệ, CSDL phân cấp CSDL mạng thành công việc phát triển kỹ thuật CSDL ứng dụns CSDL thương mại truyền thống Tuy nhiên, chúng có số khiêm khuyêt phải thiêt kế ứng dụng sở liệu phức tạp (ví dụ, CSDL cho thiết ké cơng nghiệp, cốc thí nghiệm khoa học, truyền thông, hệ thông tin địa lý , ) Các ứng dụng có địi hỏi đặc trưng khác với ứng dụng truyền thống, chẳng hạn cấu trúc đoi tượng phức tạp hơn, gicio tác kéo dài hơn, kiêu liệu m ới đê lim g iữ hình ảnh văn lớn sụ cân thiêt định nghĩa phép tốn ứng dụng riêng khơng chưẩn1 Các sở liệu hướng đối tượne đề nghị đê đáp ứng yêu cầu ứng dụng phức tạp Cách tiếp cận hna đơi tượng cung cấp mềm dẻo để đáp ứng địi hỏi mà khơng bị hạn chế bơi kiêu liệu ngơn ngữ truy vấn có hệ CO' sở liệu truyền thống M ột đặc trưng chủ chốt sở liệu hirớng đoi tượng sức mạnh cho nhà thiêt kế đê cấu trúc đoi tượng phức tạp phép tốn áp dụng cho đoi tượng M ột lý khác để tạo sở liệu hướng đối tượng việc gia tăng sử d ụ n g n g ô n n g ữ lập trình h ng đ i tư ợ n g tro n g việc p h t triên ứng d ụ n g p h â n m ềm Hiện nay, sỏ' liệu trở thành thành phần CO' nhiều hệ thong phần mềm, sở liệu truyền thống khó sử dụng dược nhúng ứng dụng phần mềm hướng đối tượng đuợc phát triển tronạ ngơn ngữ lập trình hướng đối tượng C++, SMALTALK JAVA Các sỏdữ liệu hướng đối tượng thiết kế chúng đuợc tích hợp cách trực tiếp hoàn toàn phù họp với phẩn mềm đuợc phát triển cách sử dụng ngơn ngữ lập trình hướng đối tượng Sự cần thiết phải có thêm tính chất mơ hình liệu nhà bán hệ quản trị sở liệu quan hệ thừa nhận, phiên hệ thống quan hệ đầng kết hợp nhiều đặc trưng đề nshị cho sở liệu hướng đối tượng Điều dẫn đến hệ thống dặc trưng hệ quản trị CSDL quan hệ mở rộng quan hệ đối tượne Chuấn SQL chuẩn hệ quản trị CO’ sở liệu , SQL3, có thêm đặc trưng Trong vài năm gần đây, nhiều mẫu thí nghiệm hệ sở liệu hướng đổi tượng đưọ'c tạo Các mẫu thí nghiệm gơm: hệ thơng ORION dược phát triển tai MMC (M icroelectronics and Computer Technologie Corporation, Austin, Texas) OPENOODB Texas Instrument, hệ thơng IRIS phịng thí nghiêm Hewlett-Packard, hệ thống AT&T Bell Labs ( Lucent Technologic) dự án EN CORE/O bServer Brown University Các hệ thống thương mại cỏ sẵn bao gồm GEM STONE/OPAL GemStone Systems, ONTO Onto, Objectivity Objectivity Inc, Versant Versant ó Object Technologie, ObjectStore Object Design, ARDENT ARDENT Software, POET POET Software Trên phần danh sách mẫu hệ sở liệu hướng đơi tượng thương mại có sẵn Vì hệ quản trị sở dừ liệu hướng đoi tirợng trở thành săn cỏ, cân thiêt có m ột mồ hình chuẩn ngơn ngữ chuẩn thừa nhận Vỉ thủ tục hình thức đe thừa nhận chuẩn phải nhiều năm, nhóm nhà bán hệ quản trị sỏ' liêu hướng đối tượng người dùng gọi ODMG ( Object Database M anagement Group) đưa chuẩn gọi ODMG-93 Các sở đữ liệu hướng đối tượng chấp nhận nhiều khái niệm pháttriển cho ngơn ngữ lập trình hướng đổi tượng Các khái niệm hưóng đối tượng Chúng ta gọi tát sở liệu hướng đối tượng OODB (object oriented database), ngơn ngữ lập trình hướng đối tượng OOPL (object oriented programming language) Một đối tượng thường có hai thành phần: trạng thái (giá trị) hành trạng (các phép toán) Như đối tượng gần biến chương trình ỉronq ngơn ngữ lập trình ngoại trừ việc cỏ cấu trúc liệu phức tạp phép toán riêng người ỉập trình định nghĩa Các đơi tượng tron? OOPL chí tơn q trình thực hiên chương trình chúng đưọ'c gọi dối tượna thời Một sở liệu hướng đối tượng cố thể kéo dài tồn dổi tượng cho chúng lưu trữ cách thường trực, đối tuợng tồn lâu việc kết thúc chương trình dược lấy sau đuợc chươne trinh khác chia sẻ Nói cách khác, OODB lưu trữ đoi tượng tồn lâu theo cách thường trực nhớ ph ụ cho phép chia sẻ đoi tượng cho chương trình ứng dụng Điều yêu cầu việc sát nhập đặc trưng quen biết hệ quản trị sở liệu cấu số hóa, kiếm tra cạnh tranh, phuc hồi Một hệ sở liệu hướng đối tượng giao diện vói nhiều ngôn nẹữ lập trinh huớne đối tượng để cung cấp khả chia sẻ lưu trữ đối tượng M ơt mục tiêu OODB trì môi liên hệ trực tiêp giới thực đối tirợng sở liệu cho đơi tượng khơng mât tính tồn vẹn đặc tính nhận dạng thực phép tốn chủngjnột cách dê cỉàng Vì sở liệu 0 cung cấp định danh đối tượna, (OID) hệ thống; tạo cho đối tượng Chúng ta so sánh vói 111Ơ hình sỏ' liệu quan hệ, quan hệ phải có thuộc tính khóa mà giá trị nỏ xác định mồi cách nhâí Trong mơ hình quan hệ, giá trị khóa bị thay đổi, giá trị có định danh có thê cịn biểu thị đối tượng giới thực Ngược lại, đôi tượng thê giới thực có tên khác cho thuộc tính khóa quan hệ khác làm cho khó xác định khóa biểu diễn đối tượng (Ví dụ, định danh đối tượng biểu diễn EM P_ID quan hệ SNN quan hệ khác '4ôt đặc trưng 0 ' lờ ĩc đối tượng cỏ thể có cẩu trúc đổi tượng cỏ độ /n ứ c tạp tủy ỷ để chÚL ii r tc thông tin cần thiết mô tả đoi tượng Neược lại tron^ l ác hệ thống sở ( X truyền thống thông tin đối tượng phức tạp -Vi nhiều quan '.lự ghi, dẫn đến làm liên hệ trực tiếp đôi tưựnạ f'ù;' ilạ rc ' ;u diễn sở liệu Câu true bẽii ,: Lyjig đối tượng OOPL bao gồm đặc tả hiên thê hiện, chún:' ' ,ia trị xác định trạng thái bên đối tưạns Vì biên thê hỉệ) I tỵ khái niệm thuộc tính ngoại trừ rcmg biến thê có thê bao ỢL ĩ đối tượng chúng không cần phai nhìII thấy đơi với cúc ' ỉùny bên ngồi Các biến thể kiêu liệu phức tạp tùy ý ■ hệ iiống hưó'ng đối tưọng cho phép định nahĩa p h é p toán h o ặc hi m V ì I' i Lrạng) dư ợc áp d ụ n g cho dối tirợnu cua m ột kiểu cụ thể Thực tế ! .t.ộf 'I JTIƠ hình 0 (object oriented) địi hỏi rằnạ tất phép toán mà m ột nguưi di 'Iị_ ó thể áp dụng cho đối tượng phải định nghĩa trước Điều bắt buộc mội s ao gói đầy dủ đối tượng Cách tiếp cận cứns nhắc nới lỏng troi hầu hết mơ hình 0 nhiều ngun nhân Thứ nhất, người sử dụng CO' sở ;u thường cần biết tên thuộc tính dế họ có the chì điều kiện lựa chọn ti./i c ic thuộc tính để rút đối tượng cụ thể Thứ hai, việc bao gói đày đủ kéo the %bất kỳ phép rút đon giản địi hởi phép tốn định nghĩa trước, vạ_) ụ ' tạo truy vấn tức thời ( ad hoc) khó chi Đe hỗ trợ bao gói, phv ốn đưọ'c định nghĩa hai phần: Phần dầu tiên gọi giao diện chữ ký pỉ ' I lán, tên phép tốn dơi sỏ ( thơng số) Phần thứ hai gt I phương thức (hoặc them, chi thê phép toán Các phép toán đưc gọi đến bàng cách chuyến thơng điệp đến đối tượng, thông diệp chứa tên I : phép tốn tham số Sau dó dối tượng thực phương thức cho phép toán u y Sự bao gói cho phép thay đối cấu trúc bên m ột đối tượng íiư việc thể phép tốn khơng làm xáo trộn chương trình bên ngc gọi phép tốn Như bao gói cung cắp dạng độc lập liệu phép toán Một khái niệm chủ chốt lchác hệ liiống 0 phân cap ỉớp kiêu tính thừa kế Điều cho phép đặc tả cá lviểu lớp thừa kế nhiều cấu trúc phép toán từ lớp kiểu định nghĩa trước Như vậy, đặc tả kiểu đối tượng tiến hàiiỉi cách có hệ thơng Điều dó làm cho dễ phát triển kiểu liệu hệ thông cách tăng dân sử dung lại định nghĩa kiểu tồn tạo kiểu đối tượng Một vấn đề hệ thống 0 trước bị mắc míu việc biêu diễn mối liên hệ đối tưọng Việc nhấn mạnh bao gói hồn tồn mơ hình liệu 0 trước dẫn đến việc mối quan hệ không biếu diễn cách tường minh thay vào đó, mơ tả băng cách định nghĩa phương thức thích hợp nàm đối tượng có liên quan Tuy nhiên, cách tiếp cạn làm việc không tốt sở dừ liệu phức tạp với nhiêu mơi liên hệ, việc xác định mối liên hệ làm chúng nhìn thây đổi vói nsirài dùng việc có lợi Chuẩn ODMG 2.0 nhận cần thiết vả biểu diễn tường minh m ỗi liên hệ hai thông qua m ột cặp tham chiêu ngược, nghĩa băng cách đặt OID đối tượng liên kết bên đối tượna trì tồn vẹn tham chiếu mô tả chương sau Một số hệ thống 0 cung cấp khả để làm việc với nhiều phiên bàn đối tượng - đặc trung chủ yếu thiết kế ứng dụng công nghệ Ví dụ, phiên cũ đối tượng biểu diễn thiết kế đă kiêm tra xác nhận phải giữ lại phiên kiểm tra đuợc xác nhận Một phiên của đối tượng phức tạp chứa vài phiên bán đổi tượng thành phần chủng, thành phần khác khơns, thay đổi Thêm vào việc cho phép tạo phiên bản, sở liệu 0 cho phép phát triển lược đồ, xảy khai báo kiểu thay đối kiểu mói mơi quan hệ tạo Hai tính chất khơng phải đặc trưng cho OODB chứa kiểu hệ quản trị sở liệu Một khái niệm 0 khác đa hình tốn tử ( operator polym orphism ), liên quan đến khả phép tốn áp dụng cho nhiều kiểu đối tượng khác nhau; tinh vậy, tên phép tốn có liên quan tói nhiều khác nhau, phụ thuộc vào kiểu đối tượng mà áp dụng vào Tính chất cịn gọi nạp chồng tốn tử (operator overloading) Ví dụ phép tốn tính diện tích đối tượng hình học khác phương ihức ( implementation) chúng phụ thuộc vào việc đối tượng thuộc lciếu tam giác, hình trịn hay hình chữ nhật Điều địi hỏi việc sử dụng liên kết chậm ( late binding) tên phép toán với phương thức thích hợp thời điếm chạy kiểu đối tượng mà phép toán áp dụng trở nên biết Phần cung cấp tổng quan khái niệm sớ liệu 00 2.1 Đ ịn h d an h đối tư ọ n g , c ấ u trúc đối tưọmg, K iến tạo kiểu Trong phần này, trước tiên thảo luận khái niệm định danh đối tượne, sau giới thiệu phép tốn kiến trúc quen thuộc để định nghTa cấu trúc trạng thái đối tượng Các phép toán cấu trúc thưòng gọi kiến tạo kiểu ( type constructor) Chúng xác định phép toán kiến trúc liệu tổ hợp để tạo cấu trúc đối tượng phức tạp 2.1.1 Định danh đối tượng M ột hệ thống sở liệu hướng đổi tượng cung câp định danh cho đối tượng độc lập lưu trữ sở liệu Định danh cài đặt thông qua object identifier hệ thống tạo nhât, gọi OID Giá trị cùa OỈD khơng nhìn thấy đổi với người dùng bền ngồi đươc thống sử dụng bên để xác định đổi tượng cách để tạo quản lý tham chiêu đôi tượng Tính chất chủ yếu địi hỏi OID phải khơng thay đối ( immutable); điều có nghĩa giá trị OID đơi tượng cụ thê khơng thay đơi Điều bảo quản tên gọi đổi tượng thê giới thực biêu diên Như vậy, hệ sở liệu o o p h ả i có cẩu để tạo OID bảo quản tính chất khơng thay đoi Nó mong muốn OID sử dụng lần, nghĩa là, đôi tượng bi loại bỏ khỏi sở liệu, OID khơng gán cho đơi tượng khác Hai tính chất kéo theo OID khơng phụ thc vào giá trị thuộc tính đối tượng, giá trị thuộc tính thay đơi sửa chữa Việc OID vào địa vật lý đối tượng khơng hợp lý, địa chì vật lý thay đổi sau tổ chức lại vật lý sở dũ' liệu Tuy nhiên, số hệ thống sử dụng địa chi vật lý OID để làm tăng hiệu việc rút đối tượng N ếu địa vật lý đối tượng thay đổi, trỏ gián tiếp đặt địa cũ, cho định vị vật lý đối tượng Tiện lợi sử dụns số nguyên dài làm OID sau sử dụng vài dạng bảng băm để ánh xạ giá trị OID vào địa vật lý đối tượng Một số mô hình liệu 0 trước địi hỏi thứ - từ giá trị đơn giản đên đối tượng phức tạp - phải biểu diễn đối tượng; vậy, giá trị sở số nguyên, chuỗi lcý tự, giá trị logic có OID Điều cho phép hai giá trị sở có OID khác nhau, có lợi số trường hơp Ví dụ, số ngun giá trị 50 sử dụng đế trọng lưọng theo kilô gam khác đùng để tuổi người Sau đó, hai đơi tượng với OID khác tạo , hai đối tượng biếu diễn số nguyên có giá trị 50 Mặc dù tiện lợi mặt lý thuyết điều khơng thực tiễn, điều dẫn đến việc tạo nhiều OID Vì vậy, đa số hệ sỏ' liệu hướng đối tượng cho phép biểu diễn hai: đối tượng gi a trị Mỗi đối tượng phải có OID khơng thay đổi, giá trị khơng có OID thay cho Như vậy, giá trị thường đưọ'c lưu trù bên đối tượng không đổi tượng khác tham chiếu đến Trong số hệ thống, giá trị có cấu trúc phức tạp cỏ thể tạo mà khơng có OID tương ứng cần 2.1.2 Cấu trúc đối tượng ( Object Structure) Trong sở liệu hướng đối tượng, trạng thái ( giá trị tại) đối tượng phức tạp xây dựng từ đối tưọng khác ( giá trị khác) bàng cách sử dụng số kiến tạo kiểu Một cách hình thức để biểu diễn đối tượne xem đối tượng ba (i,c,v) tronơ i định danh đổi tượng (OID), c kiến tạo kiểu ( nghĩa dẫn xây dựng trạng thái đối tượng ), V ứạng thái đôi tượng ( giá trị tại) Một mơ hình liệu chứa nhiều kiến tạo kiểu Ba kiến tạo kiểu atom, tuple, set Các kiến tạo kiểu thường dùng khác list, bag array Các tạo kiểu atom sử dụng để biểu diễn giá trị nguyên tử bản, chẳng hạn số nsuyên, sổ thưc, chuỗi ký tự, giá trị logic lciểu liệu mà hệ thống hỗ trợ cách trực tiêp Trạng thái đối tượng V cùa đôi tượng (i,c,v) diên giải dựa tạo kiêu c Nấu c = atom, trạng thái (giá trị) V giá trị nguyên tử từ miền giá trị cửa giá trị hệ thống hỗ trợ 10 Đại sô quan he !ian chế mở rộng đại số quan hệ, sử dụnơ quan hệ hạn chế nhu ì tốn hạng Chúng ta có số quy tắcsau đây: Quy tắc Quy tắc Quy tắc Quý tắc Quy tắc Quy tắc Quý tắc 1: SLF[R:qRJ ^ [SLpJ : F AND qR] 2: PJA[R:qRj > [ PJ a'k : qR ] 3: [R : qR] CP :• qs] => [R CP s : qR AND qs] 4: [R : qR] DF [ - ; qs] => [R DF s :qR] 5: [ R : qR] ƯN , s :qs] => [ R UN s : qR OR qs] : [R : q R] JNp [; ■qs] => [R UN s : qR AND qsAND F] 7: [R :qR] SJF[S -J ĩ [R SJF s : qR AND qs AND F ] Ta nối hai quan hệ hạn c tương đirơn? thân chúns quan hệ tương đương tiêu chu, ( điêu kiện) chúng biểu diễn hàm chân trị Ta có mệnh đê sau : Tât củ c biên đôi tương đương đại số quan hệ cũng, thỏa mãn đổi với đại số quan hệ hạn c Chúng ta sử dụng điều k '• để loại trừ đoạn khơng dính dáng truy vẩn.Xét điều kiện tạo ỉ nu phép chọn phép nối Trong tnrờne hợp nàỵ điêu kiện chứa phép lội vị từ Điều kiện mâu thuẫn Một ví dụ điều kiện mâu thuẫn L ;ỈPTNUM = AND DEPTNUM = Các quan hộ hạn chế với điều kiện mâu thu ỉn thực chất rỗng Điều có lợi Irony việc phát kết biểu thúi rỗng Các ví dụ biểu thức biến íliành quan hệ rỗng là: SL CITY=”LA”[S U P P L IE R :CIT ' = “S F ”] Hoặc [DEPT1 : DEPTNUM 20] Việc nhận thấy biểu thức truy vấn thực chất rõng dẫn đên việc đơn giản hóa đáng kể truy vấn Các biến đổi tương đương sau đày R xem quan hệ bình thường quan hệ hạn chế, ráL có lợi: SLF( ) < r > R Ư N O R R JN 0 ; ; PJA( ) O R DF ; R SJF ; R ; ; R CP ^ > 0 DF R 0 SJp R f ? Bây đưa tiêu chuẩn để đơn giản hóa biểu thức lược đồ đoạn, chúng sử dụng tiêu chuân tiêu chuân Tiêu chuẩn : Đẩy phép chọn xuống sau áp dụne chủns băn?, cách sử dụng đại số quan hệ hạn chế Thay kết phép chọn bane quan hệ rỗiiQ điều kiện kết mâu thuẫn Tiêu chuẩn : Sử dụng đại sô quan hệ hạn chế để tính giá trị điều kiện cùa tốn hạng phép nối Thay chứa phép nối toán hạn° nỏ harm quan hệ rỗng điều kiện kêt phép nối mâu thuẫn 110 4.2.3 Đơn giản hóa quan hệ phân đoạn ngang Xét truy vấn Q3 quan hệ DEPT phân đoạn ngang: *Q3« SL deptnum=iDEPT Dạng tắc truy vấn hình 4.5a Ta đẩy phép chọn lên phía cách hốn vị với phép hợp Sau áp dụng phép chọn theo tiêu chuân Điêu kiện kêt phép chọn DEPT2 DEPT3 mâu thuẫn hai biểu thức thay bầne quan hệ rỗne Cuối ta đơn giản phép hợp; kết cuối phép toan don giản hình 4.5b SL SL [ D E P T l : D E P T N U M 0 G B s n u m ,p n u m , s u m ( q u a n ) S U P P L Y Trong đó, phần G tương ứng với mệnh đề groupe-by phần AF tương ứnạ vói hàm kêt tập cần tính Thơng thường truy vấn thuộc tính mà việc nhóm thực chúng đưa ra; nhu vậy, thuộc tính xuất mệnh đề “group-by”cũng xuất mệnh đề Select Trong truy vấn Q , phần G rỗng hàm áp dụng cua SƯPPLY.Trong truy vấn Q , phép chọn thông thường thực đổi vói kết qua phép tốn GB, phép chọn tương ứng vói mệnh dề “having” SQL 4.3.2 Các tính chất phép tốn Group-by Tính chất mà quan tâm phân phối GB đối vói phép họp: GBg,af(Ri u n R 2) —» (GBc AF R1)UN(GB g,afR-2 ) Với điều kiện: Với i,j (Gj cR j) (G ^ R j = ) Giải thích điều kiện nhóm phải chứa hồn tồn bên đoạn., tức việc nhóm nhỏ việc phân đoạn Như vậy, rõ ràng việc thục phép group-by toán hạng phép họp sau họp kết qua chúng tương đưcrng với việc thực phép toán group-by cách trực tiếp kết phép họp Hiển nhiên tính phân phối group-by dần dán việc tính tốn phân tán truy vấn có lợi kết q (nhị) cua phép tốn group-by tập hợp lại thay quan hộ toàn cục (lớn) Cluing la cỏ liêu chuẩn sau: Tiêu chuẩn : Để phân tán việc tính hàm kết tạp nhóm xuất truy vấn toàn cục, phép hợp ( biểu diễn tập họp đoạn) phải đày lên trên, bên phép group-by tư ong ứng Tiêu chuẩn áp dụng cách tành công cho truy van Q7 QS Ta truy vấn Q Dạng tắc truy vân hình 4.1 Oa Các cua SUPPLY phải nhóm giá trị khác thuộc tính SNƯM PNUM biết, từ phân đoạn SƯPLLY giá trị băng SNƯM roi vào đoạn áp dụng biến đổi tiêu chuẩn đòi hói đe đẩy phép hợp lên phép GB Chúng ta phân phôi phép chọn dôi với phép hợp Cây phép toan cuối truy vẩn Q cho hình 4.10b Đẻ ý ràng phép tốn GB áp dụng cách riêng rẽ đoạn phép chọn áp dụng cho kết 117 S L s M(QUAN)>300 UN Hình 4.10 M ột truy vấn với hàm kết tập nhóm Bằng biến đổi tiêu chuẩn trên, ta đơn giản nhiều truy vấn nhưníi phải xem xét đên truy vân mà điều kiện cần đủ ỏ' kliôuữ áp dụng Ví dụ, trường hợp Q , khơng có phép nhóm u cầu Ta đưa tính chât khác thỏa mãn sơ hàm kêt tập Ta nói hàm kết tập F có tính tốn phân tán với da tập s va phân chia s thành đa tập S l,S , ,S n, xác định tập hợp hàm kết tập F l,F 2, ,F n biểu thưc E (F l,F 2, ,F m ) cho: F(S) - E (F l(S l), ,F l(S n ),F (S l), ,F (S n ), ,Fm (Sl), ,Fm (Sn)) Chúng ta nhớ lại đa tập có phần tử lặp lại; Irons định Hííhia trên, phân chia s phải cho phần tử s phải ánh xạ vào phần tử đa tập S l,S , ,S n ( tức cho cap lặp lại cùa phần tử s không thay đối) Khái niệm phân chia thoa man S l,S , ,S n đa tập cho giá trị cột cho truuc trèn cúc đoạn R l,R , ,R n s đa tập cho giá trị của cột quan hệ tồn cục R Có thể tìm cho hàm kết tập AVG(S) hàm Fi biếu Thúc H(Fi) cho: AVG(S)= SU M ÍSU M ÍS1i.SUMf S2) SUMÍ S n ) SƯM(COƯNT(S l),C O U N T(S2), ,COUNT(Sn) Tương tự, có: M IN(S) - M IN (M IN (Sl),M IN (S2), ,M IN (Sn)) M AX(S) = MAX(M AX(S1),MAX(S2), ,M A X (Sn)) COUNT(S) = SU M (CO Ư N T(Sl), COUNT(S2), COUNT(S3)) SUM(S) = SUM(SƯM(S1),SỰM(S2), ,SUM(S3))_ Tính tốn phân tán hàm kêt tập ].à tính chât quan trọng SO’ dừ liệu phân tán, kết riêng hàm F ( S I F m ( S n ) có thè dược chuyển đến m ột trạm chung, biểu thức E có thê đưọc tính tốn, thay chun tài liệu đến trạm tính tốn hàm kêt tập Tính chất áp dụng cho truy vấn Q Dạng tấc ti ll win hình 4.1 l.a Trong trường họp áp đụng tiêu chuân ó bơi vi diều kiện cần đủ không thỏa mãn Đe giải truy vấn, tạo hai truy vấn độc ỉập thao tác hai đoạn SƯPPLY1 SUPPLY : G B sum (sal ),count S L pnum =”pi ”S U P L L Y ì , v i i= 1,2 Giả sử SI C1 giá trị trả vào biên SUM(SAL) COUNT biểu thức SUPPLY1 S2 C2 giá trị tương ứng SUPPLY2 Khi đó, giá trị trung bính lương, AVG(SAL), cho (S1+S2)/(C1+C2) Như vậy, S1,S2,C1 C2 chuyển đến trạm mà kết truy vấn phải sinh ra, giá trị AVG(SAL) tính Nếu khơng có biến đổi này, việc tính tốn khơng phân tán hàm địi hỏi tập họp trạm có từ đoạn SUPLLY! SƯPPLY2 E:AVG(SAL)= SUM (ShS2) SUM(C1,C2) S1,C1:C ;B s u M ( S A L ) c o N T S] - P N U M = ” P1" SU PPLY1 S2,C2:GI 3s u U ( S A I (.ro iiN i SL ' P N U M = " P r SUP PLY2 Hình 4.11 Tính phân tán hàm kêt tập 4.4 Các trưy vấn tham số Các truy vẩn tham số truy vấn cơng thức tiêu chuân chọn chứa tham số mà giá trị chúng chưa biêt thời diêm dịch truy vân Khi truy vẩn tham số thực hiện, người sử dụng cung câp giá trị, giá trị thay cho tham số Như vậy, truy vấn tham sô cho phép thực lặp lại truy vấn với giá trị khác tham số, đưa kết khác nhautạimỗi thực Các truy vấn tham số quan trọng, tất ứng dụng sử dụng truy vấn tham số để truy cập sở liệu phân tán Các biên đôi sau rât quan trọng đê hiêu chương trình ứng dụng viết Thông thường biến đổi phần tối ưu truy vấn thường dược người lập trình sử dụng để xác định truy vấn thực ứng dụng họ cách dãn 4.4.1 Đơn giàn hóa truy vấn tham số đại số mơ rộng Xét truy vấn sau đây: Q : S L De p t n u m = s x o r deptnum = SY DEPT Tai thời điểm chạy giá trị đirợc chương trình dưa truy vân gán cho biên $x $Y 119 Việc đơn giản hóa truy vấn tham số có số tính chất đặc biết Xét truy vấn Dạng tắc cho hình 4.12a Tại thịi điểm dịch, khơng biết đoạn quan hệ DEPT đến Tuy nhiên, biết nhiều hai đoạn chúng đưa vào truy vấn Tại thời điểm chạy, truy vấn kích hoạt, cho giá trị tham số, biết đoạn đưa vào truy vấn Điều ràng phần việc đơn giản hóa truy ván tham số truy vấn thực thời-diem dịch phần cần thực thời điểm chạy Để ý việc đơn giản hóa truy vấn tham số liên quan dến việc áp dụng đại số quan hệ hạn chế để xác định xem điều kiện biểu thức có mâu thuẫn hay khơng Trong ví dụ trên, ta giả thiết truy vẩn đưa ra, tham số thay giá trị sau đây: X=1 Y =13 Khi đó, dơn giản thịi điểm chạỵ DEPT3 cơng thức chọn “ DEPTNUM=1 OR DHPTNLÍM-13" màu thuẫn với điều kiện Như vậy, ngun tắc, khơng có cần làm với đơn giản hóa thời gian chạy khác với dơn giản hóa thời gian dịch Tuy nhiên chím" ta hy vọng đa số tối ưu làm thời gian dịch, đặc biệt truy vấn tham số hay kích hoạt Ngồi ra, không hy vọng sử dụng kỹ thuật phức tạp ( áp dụng chứng minh định lý) thời điểm chạy, lý tính hiệu Như vậy, dường việc hạn chế tối ưu thời gian chạy đến số kiểm tra đơn giản mà chúng thỏa mãn cho phép đơn giản việc thực truy vàn lả hợp lý Việc nhận biểu thức cho kiểm tra đòi hỏi vài thao tác dại sỏ điều kiện chọ phân đoạn thương cho thời gian dịch thời gian chạy SL (a) Dạng tắc cùa truy vấn Q9 CUT (b) Cây truy vấn với phép tốn CUT Hình 4.12 Sử dụng CUT truy vấn tham số Tối ưu thời gian chạy có tác dụng loại bỏ biểu thức từ cày phép toán sinh thời gian dịch Đe biểu diễn phép tốn có mật kiểm tra việc đơn giản hóa thời gian chạy, thay phép toán họip phép toán n ngơi gọi phép tốn CUT; phép tốn thực họp vài tốn hạng Phép tốn CUT có đặc tá chứa, vói mồi tốn hạne công thức sử dụng tham số truy vấn điều kiện phân doạn Mỗi cỏne thức chuẩn bị thời gian dịch tính thời gian chạy Nếu cùnu thức trả giá trị tốn hạng tương ứng dưa vào trons, phép họp, côn" thức trả giá trị sai tốn hạng tương ứng bị loại khỏi Đe ý ràng toàn sinh tốn hạng khơng càn dược thực trường hợp này; nên thục cơng thức tham sô săn sàng cho phép tốn đơn Íàn trước bắt đầu việc thực Trên thực tê, mồi cơng thức địi hỏi rang biểu thức tương ứng có điều kiện khơng màu thuẫn Hình 5.12b phép toán cho truy vấn tham sổ Trong ví dụ , phép chọn đẩy xuống phép hợp bàng cách áp dụng tiêu chuân sau phép hợp thay bàng phép CUT Ba cơng thức cho phép tốn CUT ( Mơi cơng thức cho toán hạng phép họp) sau: F1: $ x 20 FI F2 F3 đươc chuẩn bị thời điểm dịch bàng cách xác định công thức phai thỏa mãn tham số truy vấn để điều kiện tốn hạng tương ứng khơng bị màu thuẫn Tại thời điểm chạy, phép toán CỤT thực đầu tiên; với $x=l sV = 13 truy vấn rút gọn thành nhánh thứ nhât thứ hai phép toán; với $ x = SY = truy vấn rút gọn thành nhánh thứ nhât 121 4.4,2 Sử dụng tạm thời việc đa kích hoạt truy vấn tham sổ Các truy vấn tham số đặc trưng kiện chúng sử dụng cách lặp lại đôi với giá trị khác tham sô Trong số trường họp, nhứna thực lặp lại tập trung khoảng thời gian nhắn Điều xảy truy vẩn m ột phần m ột vòng lặp chương trình ứng dụng mà mồi lần lặp địi hỏi giá trị chấp nhận vói tham số truy vấn Như thây, việc lặp lại thực truy vấn ỉần kích hoạt có chi phí Đê hạ thâp chi phí cân xây dựng quan hệ tạm thịi tai trạm gơc truy vân, lưu trữ tập lớn dừ liệu lần lặp đòi hỏi Trong phân khả xây dựng quan hệ tạm thời có lợi cách thao tác phép toán truy vấn Xét truy vấn sau: Q10 PJ nameSL mgrnjjm = sxanddeptnum=i2EMP Đầu tiên sửa đổi truy vấn cho nhận phép toán hình 4.13a Mục tiêu chung biến đổi làm cô lập không tham số bới chúng tạo nên tạm thời địi hỏi Trong ví dụ, sử dụng tính bất biến để tạo hai phép chọn khác nhau, ỉvlỏt phép chọn MGRNUM tham số phép chọn DEPTNƯM khônrr phải tham sổ.Chúng ta sử dụng tính bất biến đé tạo phép chiếu N a M Ì: MGRNUM Phép chọn DEPTNUM phép chiếu dấy phía cua cà) phép tốn thường lệ troag phép chọn MGRNUM dẩy lui Hhư vậy, làm cô lập không tham sổ, tương ứng với l)ièu thức: P J n a m e m g r n u m S L d e p t n u m = i E M P Sau chúngta gọi T tạm thời dược cho biêu thức chia plìỏp lốn thành hai mẩu tương ứng với T ( xem hình 4.13 b) T biểu diễn quan hộ tạm ihuì se sử dụng cho việc thực lặp lại truy van Q P-Ịn a m e PJ name S^M G RN U M =SX S]-M R G N U M = S X T P J n a m e m g r n u m Hình 5.13 Sử dụng quan hệ tạm thời cho truy vấn tham số 122 KÉT LUẬN Trước thực truy vấn thao tác quan hệ tồn cục cần phải biến đổi thành m ột truy vẩn thao tác đoạn Cách trực tiếp để thực biến đổi thay quan hệ toàn cục xuât truy vấn toàn cục bàng đảo ngược biểu thức phân đoạn chúng Truy vấn kết thao tác đoạn gọi biểu thức truy vấn tồn cục Biểu thức tăc có thê thực cách trực tiếp sở liệu phân tán, nhiên, nói chung, biểu diễn thực không hiệu qua truy vấn Vì cần sửa đổi biểu thức tắc bàng cách cách áp dụng biến dổi tương đương cho Nhiều tiêu chuẩn thử nghiệm gợi ý biến đổi áp dụns để nhận biểu thức đơn giản Cũng sử dung ưu điểm thông tin phân đoạn đế loại bỏ khỏi biểu thức truy vấn biểu thức khơng đóng góp cho kết Các khái niệm quan hệ hạn chế đại ssố quan hệ hạn chế phát triển cho mục đích 123 Phụ lục 3: Các báo cáo khoa học 1- Nguyễn Tuệ ứ ng đụng mô hỉnh thực thể liên kết mở rộng vào việc thiết kế quan niệm sở đữ liệu hướng đôi tượng 2- Nguyễn Tuệ Thuật tốn chuẩn hóa sờ liệu quan hệ bàng lập trình 3- Nguyễn Tuệ, Lý Anh Tuấn ObjectStore PSE Pro: Một giải pháp quàn trị dừ liệu hướng đối tượng 124