Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 12 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
12
Dung lượng
189,41 KB
Nội dung
45 TÍCHHỢPCÁCCƠSỞDỮLIỆUXML Lê Thị Thu Thủy Trổồỡng Đại họcKhoa học, Đại học Huế Đoàn Đại Dương Trổồỡng Đại học Sư phạm, Đại học Huế 1. GIỚI THIỆU Nguồn thông tin phong phú và hữu ích hiện đang được lưu trữ trên hàng tỷ web site trên mạng. Trong khi một website truyền thống chỉ hỗ trợ cho biểu diễn thông tin, thì việc tìm kiếm một ngôn ngữ có cấu trúc để biểu diễn các thông tin trên trang Web đang được đầu tư nghiên cứu. XML 1 (eXtensible Markup Language) xuất hiện và nhanh chóng trở thành chuẩn cho các thế hệ web trong tương lai. Nó cũng là nền tảng để hình thành một lớp cơsởdữliệu (CSDL) mới: CSDL XML [3,8]. Để hỗ trợ người sử dụng trong việc tìm và sử dụng thông tin, các CSDL XML phân tán được tích hợp, cung cấp một sự biểu diễn duy nhất từ các CSDL XML khác nhau tham gia vào hệ thống. Một hệ thống CSDL XMLtíchhợp sinh ra một lược đồ toàn cục (global schema) cho hệ thống. Lược đồ này là sự thống nhất và hòa hợpcác lược đồ cục bộ (local schema) của các nguồn dữliệu tham gia vào hệ thống. Nó là chìa khóa hỗ trợ cho tất cả các tiến trình của hệ thống sau này. Trên cơsở của lược đồ tích hợp, một tập các ánh xạ đến các nguồn cục bộ được tạo ra hỗ trợ cho việc xử lý câu truy vấn của người sử dụng như: tách câu truy vấn, tíchhợpcácdữliệu thô từ các nguồn , giúp người sử dụng lấy được 1 http://www.w3.org/TR/REC-xml 46 thông tin tíchhợp cần thiết từ hệ thống, tiết kiệm thời gian và công sức của người sử dụng. Nhiều hệ thống tíchhợp đã và đang được xây dựng [2,4,6], tuy nhiên các hệ thống này vẫn còn nhiều hạn chế trong giải quyết xung đột giữa các lược đồ [5] và tíchhợpdữliệu [3,7]. Để khắc phục những hạn chế của những nghiêncứu trên, chúng tôi đưa ra một khung làm việc (framework) mới về tíchhợpcác CSDL XML [3,7]. Hệ thống mới này vừa có khả năng tíchhợpcác lược đồ vừa có thể đưa ra các quyết định xử lý câu truy vấn của người sử dụng. Đây là một trong số ít hệ thống có chiến lược tíchhợp n lược đồ cục bộ một lần (one shot strategy) [2]. Nó có thể giải quyết các xung đột chính bên trong các lược đồ theo hướng thống nhất. Ngoài ra, hệ thống có thể tách câu truy vấn của người sử dụng trên lược đồ toàn cục thành các truy vấn con của từng nguồn cục bộ đồng thời. Đây là một điểm mới so với các hệ thống đã được xây dựng [2,4,6]. Một ưu điểm nữa của hệ thống là dữliệu từ các nguồn cục bộ được tíchhợp và trả về các thông tin thân thiện với người sử dụng. Ngôn ngữ XDD (XML Declarative Description) [9] - ngôn ngữ mô tả khai báoXML - được sử dụng làm nền tảng cho tất cả các thành phần của hệ thống. Phần 2 trình bày ngắn gọn tổng quan về ngôn ngữ XDD. Phần 3 mô tả kiến trúc và các thành phần tạo nên hệ thống tíchhợpcác CSDL XML. Cuối cùng, phần 4 kết luận của bài viết. 2. TỔNG QUAN NGÔN NGỮ XDD XDD (XML Declarative Description) một ngôn ngữ biểu diễn thông tin dựa vào khuôn dạng tài liệu XML. Nó thực chất là sự mở rộng khả năng biểu diễn của các phần tử XML bằng cách sử dụng kết hợp với các biến nhằm mô tả một tập các thông tin có liên quan với nhau. Một phần tử XML mở rộng như vậy gọi là biểu thức XML (XML expresion). Bảng 1 liệt kê các loại biến sử dụng trong 47 XDD. Với quan điểm này thì một phần tử XML bình thường - không chứa biến - được gọi là biểu thức XML nền tảng (ground XML expresion). Một mô tả XDD là một tập các mệnh đề XML với khuôn dạng như sau: H B 1 , , B m , 1 , , n trong đó m, n 0; H và B i (i=1, , m) là các biểu thức XML trong khi j (j=1, , n) là ràng buộc XML (XML constraint) sử dụng để định nghĩa các ràng buộc trên các biểu thức XML. Với khuôn dạng mệnh đề XML như trên, H còn gọi là phần đầu của mệnh đề (Head); tập hợp {B 1 , , B m , 1 , , n } gọi là phần thân của mệnh đề (Body). Tên biến Ký hiệu kiểu Biểu diễn Name-variables: biến tên $N Tên phần tử hoặc tên các thuộc tính String-variables: biến chuỗi $S Chuỗi dữliệu Pair-variables: biến cặp "thuộc tính- giá trị" $P Dãy 0 hoặc nhiều cặp "thuộc tính-giá trị" Bảng 1: Kiểu của các biến trong XDD 48 Expression-variables: biến biểu thức XML $E Dãy 0 hoặc nhiều biểu thức XML Intermediate-variables: biến biểu thức trung gian $I Một phần của biểu thức XML 3. MÔ HÌNH HỆ THỐNG TÍCHHỢPCÁC CSDL XML Hệ thống đưa ra là một trong số ít hệ thống tíchhợpcócác thành phần được thiết kế để có thể làm việc hài hòa với nhau. Trên nền của XDD, nó có thể tíchhợp n lược đồ cùng một lúc [3]. Lược đồ tíchhợp đạt được là sự thống nhất và hài hòa giữa các lược đồ cục bộ từ các nguồn dữliệu khác nhau. Ngoài ra, hệ thống còn có khả năng tách một câu truy vấn thành các truy vấn con khớp với khuôn dạng cho từng lược đồ cục bộ [7]. Với hướng tiếp cận này, dữliệu rút trích từ các nguồn được tíchhợp dễ dàng, cung cấp kết quả thân thiện cho người sử dụng. Việc ứng dụng XDD làm cấu trúc nền tảng của hệ thống khiến các thành phần hệ thống trở nên mềm dẻo đối với việc tíchhợp lược đồ cũng như xử lý và tíchhợpdữ liệu. 3.1. Câu truy vấn XDD: Một câu truy vấn [9] gồm ba phần: phần đầu (constructor), phần thân (pattern) và các ràng buộc (filters) của câu truy vấn, tương ứng với ba phần của một mệnh đề XML. So với câu truy vấn SQL truyền thống, contructor là khuôn dạng dữliệu người sử dụng cần hiển thị, có thể tương ứng mệnh đề SELECT; patern tương ứng với khuôn dạng dữliệu nơi cần lấy dữ liệu, tương ứng với mệnh đề FROM và filter đưa ra các ràng buộc trên câu truy vấn, có thể tương ứng với mệnh đề WHERE. Trong quá trình thực hiện truy vấn, khi pattern của câu 49 truy vấn khớp với một phần nào đó của tài liệuXML và các ràng buộc trong filter được thoả mãn, kết quả của câu truy vấn được rút ra theo khuôn dạng của contructor. Dữliệu truy vấn được cũng là một tài liệu khuôn dạng XML, được gởi đến bộ trung chuyển để tiếp tục quá trình tíchhợpdữ liệu. 3.2 Bộ trung chuyển (Mediator): Mediator là thành phần quan trọng nhất của hệ thống. Nó bao gồm hai đơn vị: bộ tíchhợp lược đồ (schema integration) và bộ tíchhợpdữliệu (data integraion). Bộ tíchhợp lược đồ, có nhiệm vụ tíchhợp tập các lược đồ cục bộ từ các nguồn dữliệu khác nhau về cấu trúc, sinh ra một lược đồ XML toàn cục và tập các ánh xạ. Tập ánh xạ này giúp hệ thống hiểu được sự tương ứng giữa các đối tượng (tên trường, thuộc tính) giữa lược đồ tíchhợp và các lược đồ cục bộ. Trên nền của XDD, ánh xạ được tổ chức để có thể sử dụng theo hai chiều với mục đích: - Tách câu truy vấn của người sử dụng (trên cấu trúc của lược đồ toàn cục) thành các truy vấn con phù hợp với cấu trúc lược đồ cục bộ của các nguồn dữliệu liên quan; - Làm siêu dữliệu (metadata). Dựa vào thông tin từ siêu dữ liệu, hệ thống có thể chuyển đổi khuôn dạng dữliệu rút trích được từ các nguồn cục bộ thành khuôn dạng chung của hệ thống, kết xuất kết quả thân thiện với người sử dụng. Cấu trúc ánh xạ hai chiều được mô tả như sau: <Mapping> % Ánh xạ quy định sự tương 50 <$N:globalTag> $E:exp <$N:globalTag> <local> <$N:tagName1 source=$S:source1> $E:exp1 <$N:tagName1> <$N:tagName2 source=$S:source2>$E:exp2 <$N:tagName2> <local> <Mapping> % % % % % % % % ứng của phần tử $E:exp ở lược đồ toàn cục với các phần tử $E:exp1, $E:exp2 trong các nguồn cục bộ $S:source1 và $S:source2 Dựa trên nền của XDD, công việc tíchhợpcác lược đồ được diễn ra đồng thời. Nếu có n lược lược đồ tham gia vào hệ thống, chúng được tích hợp, dung hòa các mâu thuẫn đồng thời một lúc để đưa ra lược đồ chung cuối cùng. Cần phải nhấn mạnh rằng, rất ít các hệ thống tíchhợpcó khả năng tíchhợp nhiều lược đồ đồng thời trong cùng một tiến trình. Hầu hết các hệ thống phải tiến hành tíchhợp trên từng cặp lược đồ do sự phức tạp và khả năng của ngôn ngữ lập trình sử dụng. Đối với hệ thống đang được xây dựng, sự thành công này diễn ra trên nền của XDD vì mỗi lược đồ XML tham gia vào việc tíchhợp được xem như là một biểu thức XML ($E:expression) trong các luật tíchhợp của hệ thống, mỗi luật là một mệnh đề XML. Trong quá trình tíchhợp này hệ thống có thể giải quyết nhiều xung đột xảy ra giữa các lược đồ như: xung đột tên phần tử, xung đột Hình 1: Cấu trúc ánh xạ 51 cấu trúc các phần tử, xung đột các ràng buộc và xung đột các kiểu dữ liệu. Chi tiết về các loại xung đột và cách thức giải quyết các xung đột này được chúng tôi trình bày chi tiết trong [3,7]. Bộ tíchhợpdữliệu tiến hành chuyển đổi khuôn dạng của tất cả dữliệu được trích rút từ các nguồn cục bộ cho phù hợp với lược đồ chung dựa vào thông tin từ ánh xạ hai chiều. Sau đó, nó tìm cách loại trừ các mâu thuẫn bên trong dữ liệu, kiểm tra loại bỏ cácdữliệu trùng lặp. Cuối cùng dữliệu được trả về cho người sử dụng qua giao diện của hệ thống. Thành phần quan trọng nhất của hệ thống, bộ trung chuyển, thực chất là tập các luật trên nền của XDD. Việc gắn các luật này giúp các thành phần của hệ thống có thể tự động suy diễn sinh ra các sự kiện (fact) mới dựa trên tập luật và các sự kiện ban đầu. Luật có thể áp dụng đệ quy, chẳng hạn: phần thân của luật này có thể gắn vào phần đầu của luật khác để tiếp tục quá trình suy diễn, kết quả của luật này có thể làm đầu vào của luật khác. Khi thực thi chương trình tập luật có thể được cài đặt bởi ngôn ngữ lập trình XET [1], một ngôn ngữ dựa trên lý thuyết XDD. 3.3. Bộ xử lý truy vấn (Query handler): Đây là thành phần giúp hệ thống tíchhợpcó thể giao tiếp với người sử dụng. Nó bao gồm ba thành phần chính: bộ lập truy vấn (query formulation), bộ tối ưu câu truy vấn (query optimization) và bộ tách câu truy vấn (query decomposition). <$N:LocalTag source=$S:source> $E:exp1 % % Luật này chỉ ra rằng: nếu truy vấn có chứa phần tử $N:tag1 thì ta 52 <$N:tag2> $E:content <$N:tag2> $E:exp2 <$N:LocalTag> <$N:GlobalTag> $E:exp1 <$N:tag1>$E:content<$N:tag1> $E:exp2 <$N:GlobalTag > <Mapping> <$N:GlobalTag> <$N:tag1>$E:content<$N:tag1> <$N: GlobalTag > <local> $E:exp3 <$N:LocalTag source=$S:source> % % % % % % % % % % sẽ thay bằng phần tử $N:tag2 trong lược đồ cục bộ $S:source tương ứng với nó. Khuôn dạng câu truy vấn của người sử dụng có chứa phần tử $N:tag1. Ánh xạ chỉ ra: phần tử $N:tag1 ở lược đồ toàn cục tương ứng với phần tử $N:tag2 trong lược đồ cục bộ $S:source. 53 <$N:tag2>$E:content<$N:tag2> <$N:LocalTag> $E:exp4 <local> <Mapping> Bộ lập truy vấn giúp chuyển đổi các câu truy vấn khuôn dạng bất kỳ của người sử dụng thành câu truy vấn khuôn dạng XDD, ví dụ: chuyển truy vấn XQuery thành truy vấn khuôn dạng XDD. Bộ tách truy vấn sẽ tách câu truy vấn sau khi được tối ưu thành các câu truy vấn con. Trong khi câu truy vấn của người sử dụng có cấu trúc và khuôn dạng của lược đồ chung, các câu truy vấn con được tách ra lại phù hợp với khuôn dạng các lược đồ thành phần. Với các truy vấn con này, hệ thống sẽ rất dễ dàng trong việc rút trích dữliệu trực tiếp từ các nguồn cục bộ. Như đã đề cập ở trên, việc tách được tiến hành dưới sự hỗ trợ của tập ánh xạ và các quy tắc suy diễn của tập luật XDD đặc thù. Một luật XDD cho việc tách một câu truy vấn được thể hiện như hình 2. 4. KẾT LUẬN Hệ thống tíchhợpcác CSDL XML được trình bày là một trong số ít những hệ thống có khả năng tíchhợp nhiều lược đồ con đồng thời qua một qui trình biến đổi. Với các điểm mạnh của XDD trong việc mô hình các ứng dụng Hình 2: Một luật XDD dùng để tách câu truy vấn 54 khuôn dạng XML, khung làm việc của hệ thống đã hội đủcác yêu cầu chính của một hệ thống tích hợp. Tất cả các thành phần của hệ thống đều được xây dựng trên nền của XDD, tạo ra sự mềm dẻo trong quá trình xử lý và chuyển đổi dữliệu giữa chúng. Hệ thống cung cấp cho người sử dụng dữliệutíchhợp ở khuôn dạng một tài liệuXML chuẩn, thân thiện với người sử dụng, hữu ích trong việc trao đổi với các ứng dụng XML khác. Khung làm việc của hệ thống này đã và đang được cài đặt bước đầu thành công sử dụng ngôn ngữ lập trình XET, với các CSDL XML phân tán trên mạng LAN. Chúng tôi dự định phát triển hệ thống để có thể làm việc ở môi trường internet, nơi các CSDL được phân tán trên mạng với mục đích thương mại. Một ứng dụng điển hình có thể nghiêncứu trong tương lai là truy vấn thông tin từ các trang web XML đã được tíchhợp trên mạng khi chúng cùng chia sẽ một lược đồ chung. TÀI LIỆU THAM KHẢO 1. Anutariya, C., Wuwongse, V., and Wattanapailin, V. An Equivalent- Transformation-Based XML Rule Language. Proceedings of the International Workshop on Rule Markup Languages for Business Rules in the Semantic Web, Sardinia, Italy (2002). 2. Batini, C., Lenzerini, M., and Navathe, S. B. A Comparative Analysis of Methodologies for Database Schema Integration. ACM Computing Surveys. Vol. 18, No. 4 (1986) 323 - 364 . 3. Duong, D. D., and Wuwongse, V. XML Databases Schema Integration Using XDD. Proceedings of Advances in Web-Age Information Management Conference, China. Lecture Notes in Computer Science, Springer Verlag, Vol. 2762 (2003) 92 - 103 [...]... Mylopoulos, J A semantic approach to XML based data integration Proceedings of the 20th International Conference on Conceptual Modelling (ER), Yokohama, Japan (2001) 5 Pluempitiwiriyawej, C., Hammer, J A Classification Scheme for Semantic and Schematic Heterogeneities in XML Data Sources Technical report TR00-004 University of Florida (2000) 6 The MIX (Mediator of Information using XML) Available online: http://www.database.ucsd.edu/project/MIX... Integrated XML Databases Proceedings of the 5th International Conference on Information Integration and Web-based Applications & Services, Jakarta, Indonesia (2003) 335 - 344 8 Wuwongse, V., Akama, K., Anutariya, C., and Nantajeewarawat, E A Data Model for XML Databases Journal of Intelligent Information Systems Vol 20, No 1, (2003) 63 - 80 9 Wuwongse, V., Anutariya, C., Akama, K., and Nantajeewarawat, E XML. .. for the Semantic Web IEEE Intelligent Systems, Vol 16, No 3 (2001) 54 - 65 INTEGRATION OF XML DATABASES Le Thi Thu Thuy College of Sciences, Hue University 55 Doan Dai Duong, College of Pedagogy, Hue University SUMMARY XML database integration has been paid due attention to in the past few years, especially when XML is widely accepted as the new generation of the web However, the building of a framework... of the web However, the building of a framework that can resolve easily the conflicts between schemas and decompose query efficiently is still a great challenge The paper's purpose is to propose a new XML database integration framework, and to demonstrate the power of XDD theory in modeling user's query and system's components The framework can be extended to work with Web application metadata integration . 45 TÍCH HỢP CÁC CƠ SỞ DỮ LIỆU XML Lê Thị Thu Thủy Trổồỡng Đại học Khoa học, Đại học Huế Đoàn Đại Dương Trổồỡng Đại học Sư phạm, Đại học Huế 1. GIỚI THIỆU Nguồn. một lớp cơ sở dữ liệu (CSDL) mới: CSDL XML [3,8]. Để hỗ trợ người sử dụng trong việc tìm và sử dụng thông tin, các CSDL XML phân tán được tích hợp, cung cấp một sự biểu diễn duy nhất từ các CSDL. schema) của các nguồn dữ liệu tham gia vào hệ thống. Nó là chìa khóa hỗ trợ cho tất cả các tiến trình của hệ thống sau này. Trên cơ sở của lược đồ tích hợp, một tập các ánh xạ đến các nguồn cục