4.3.4.1. Xử lý tìm kiếm các nguồn thông tin
Quá trình tìm kiếm thông tin bắt đầu ở tầng trình diễn của kiến trúc hệ thống. Ngƣời sử dụng có thể đƣa một truy vấn thông qua một màn hình truy vấn thống nhất cung cấp cho tác tử User Interface Agent. Tiến trình truy nhập vào các nguồn thông tin bao gồm hai bƣớc:
Bƣớc 1: Tạo giao dịch toàn cục
Với sự yêu cầu truy vấn của ngƣời sử dụng, yêu cầu sẽ đƣợc gửi cho tác tử User Interface Agent theo mẫu của một giao dịch toàn cục, đó là yêu cầu ngƣời sử dụng một cách trực quan biểu diễn trong định dạng SQL chuẩn, cũng nhƣ xác nhận tính hợp lệ của cú pháp bằng tử điển siêu dữ liệu. Giao dịch toàn cục bao gồm các khái niệm và
thuộc tính ảo trong lƣợc đồ. Giao dịch toàn cục sau đó đƣợc chuyển cho tác tử Mediator Agent, tại đây giao dịch toàn cục bắt đầu đƣợc phân rã.
Bƣớc 2: Phân rã giao dịch toàn cục
Tiến trình này chuyển đổi giao dịch toàn cục thành các giao dịch con bằng việc thay thế mỗi khái niệm và thuộc tính ảo trong giao dịch toàn cục với khái niệm và thuộc tính vật lý phù hợp của các nguồn vật lý cục bộ lấy ra từ tử điển siêu dữ liệu. Tiến trình phân rã có thể đƣợc hoàn thành theo hai bƣớc nhƣ sau:
(1) Ánh xạ: Các khái niệm và thuộc tính ảo trong câu lệnh SELECT đƣợc ánh xạ vào các thuộc tính, khái niệm và nguồn vật lý phù hợp. Tiến trình này đƣợc thực hiện thông qua một thuật toán ánh xạ.
Thuật toán: Tìm kiếm thông tin vật lý trong từ điển siêu dữ liệu
Đầu vào: Một cặp <vc, vp>, trong đó: vc là tên khái niệm ảo xác định trong mệnh đề FROM và vp là tên thuộc tính xác định trong mệnh đề SELECT hoặc WHERE.
Đầu ra: T = {ai | i = 1 ... n}, một tập hợp hữu hạn ảo và thông tin ánh xạ vật lý với ak ∈ T đƣợc xác định là 5 phần tử <vc, vp, PPname, PCname, PSname>, trong đó:
PPname, PCname và PSname lần là: tên thuộc tính vật lý, tên khái niệm và tên nguồn
dữ liệu.
(2) Tạo các giao dịch con: Mỗi giao dịch con đƣợc tạo từ ba tiến trình sau: (2.1) Tiến trình nhóm: Các khái niệm/thuộc tính ảo và các khái niệm/thuộc tính vật lý phù hợp với cùng nguồn vật lý đƣợc nhóm lại với nhau.
(2.2) Tiến trình thay thế: Các khái niệm/thuộc tính ảo trong từng nhóm đƣợc thay thế bởi các khái niệm/thuộc tính vật lý phù hợp cho khuôn mẫu của giao dịch con. Các thuộc tính vật lý xem xét thông tin yêu cầu trong mệnh đề SELECT và các khái niệm vật lý hay các nguồn thông tin truy nhập trong mệnh đề FROM.
(2.3) Tiến trình tạo ràng buộc chung: Các khái niệm/thuộc tính trong mệnh đề WHERE của giao dịch toàn cục đƣợc ánh xạ với các thuộc tính, khái niệm và nguồn. Đối với từng nhóm với cùng nguồn vật lý, các vị từ định tính của giao dịch toàn cục đƣợc thay thế bởi các thuộc tính và các khái niệm với cùng các ràng buộc trong một giao dịch con. Các vị từ liên kết của một giao dịch con đƣợc tạo từ việc so khớp các cặp giống nhau của các thuộc tính vật lý và các khái niệm vật lý tƣơng ứng. Các ràng buộc này đƣợc kết hợp lại để xây dựng các ràng buộc hoàn thiện của các giao dịch con nhƣ hình 4.7 dƣới đây.
Hình 4.7 - Phân rã giao dịch toàn cục thành các giao dịch con phù hợp với các nguồn thông tin vật lý
Từng giao dịch con, cùng với cấu hình nguồn vật lý là cần thiết cho việc truy cập các nguồn thông tin, chúng đƣợc đóng gói và gửi theo cùng với từng tác tử Search Agent đến tác tử LocalDBAgent tại các nguồn thông tin đích.
4.3.4.2. Xử lý tích hợp các nguồn thông tin
Kết quả thu đƣợc từ thực hiện từng giao dịch con đƣợc chuyển đổi thành mô hình dữ liệu chính tắc biểu diễn ở định dạng XML thông qua giao diện wrapper nhƣ minh họa trong hình 4.8 (a) và (b) dƣới đây. Kết quả XML đƣợc chuyển cho tác tử Mediator Agent để thực hiện tiến trình tích hợp.
Hình 4.8 - Tích hợp kết quả XML thành dữ liệu XML hợp nhất
Tác tử Mediator Agent sử dụng thông tin thu đƣợc từ từ điển siêu dữ liệu để tích hợp kết quả XML thành dữ liệu XML hợp nhất. Xung đột về tên, kiểu dữ liệu và thang chia tỷ lệ bị loại trừ trong quá trình tích hợp nhƣ sau:
(1) Loại trừ các xung đột về tên: Nếu bất kỳ thuật ngữ nào của kết quả XML là con của cùng thuộc tính cha ảo thì các thuật ngữ này đƣợc coi là đồng nghĩa và đƣợc kết hợp với thuộc tính cha ảo.
(2) Loại trừ các cung đột về kiểu dữ liệu và thanh chia tỷ lệ: Các kiểu dữ liệu khác nhau hay các loại đơn vị tính của các phần tử giống nhau hoặc các thuật ngữ đồng nghĩa trong từng kết quả XML đƣợc chuyển đổi thành một kiểu dữ liệu hợp nhất hoặc định nghĩa kiểu đơn vị tính trong thuộc tính ảo thích hợp. Dữ liệu XML hợp nhất thu đƣợc từ lƣợc đồ khái niệm ảo (nhƣ minh họa ở hình 4.8 (c)) đƣợc chuyển tiếp cho tác tử User Interface Agent ở tầng trình diễn.