ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Thế Cường
TÍCH HỢP THÔNG TIN KHÔNG THUẦN NHẤT VỀ NGỮ
NGHĨA TRONG MÔI TRƯỜNG PHÂN TÁN
LUẬN VĂN THẠC SĨ
HÀ NỘI – 2007
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN THẾ CƯỜNG
TÍCH HỢP THÔNG TIN KHÔNG THUẦN NHẤT VỀ
NGỮ NGHĨA
TRONG MÔI TRƯỜNG PHÂN TÁN
Ngành:
Công nghệ thông tin
Chuyên ngành:
Mã số:
1.01.10
LUẬN VĂN THẠC SĨ
NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS TRẦN ĐÌNH QUẾ
HÀ NỘI – 2007
iv
MỤC LỤC
Lời cảm ơn
ii
Mục lục
iv
Danh sách hình vẽ
vi
Danh sách bảng
viii
Ký hiệu viết tắt
ix
Mở đầu ............................................................................................................................ 1
Đặt vấn đề................................................................................................................... 1
Những nghiên cứu về tích hợp và phân lớp dữ liệu phân tán .................................... 3
Mục tiêu của luận văn ................................................................................................ 4
Tóm tắt nội dung luận văn.......................................................................................... 5
Chương 1 Tổng quan về tích hợp thông tin và phân lớp dữ liệu phân tán ............ 6
1.1
Tổng quan về tích hợp thông tin phân tán ........................................................ 6
1.1.1 Nhu cầu tích hợp thông tin .................................................................... 6
1.1.2 Những vấn đề cần quan tâm trong xây dựng hệ tích hợp dữ liệu ......... 7
1.1.3 Những phương pháp tích hợp thông tin ................................................ 8
1.2
Phân lớp dữ liệu phân tán ........................................................................ 13
1.2.1 Dữ liệu phân tán ........................................................................... 13
1.2.2 Phân lớp dữ liệu ................................................................................ 14
1.3
Kết luận ........................................................................................................... 19
Chương 2 Ontology trong tích hợp thông tin phân tán và không thuần nhất ..... 20
2.1
Ontology trong tích hợp thông tin không thuần nhất về ngữ nghĩa................ 20
2.1.1 Định nghĩa ontology............................................................................ 21
2.1.2 Tích hợp các ontology......................................................................... 24
2.1.3 Nguồn dữ liệu mở rộng với ontology.................................................. 30
2.1.4 Các phép toán mở rộng ontology ........................................................ 32
2.2
Tích hợp thông tin thống kê dựa trên ontology .............................................. 33
2.3
Hệ tích hợp thông tin thống kê trong môi trường phân tán ............................ 37
2.4
Kết luận ........................................................................................................... 40
Chương 3 Phân lớp dữ liệu tập trung và phân tán .................................................. 41
v
3.1
Một số giải thuật phân lớp dữ liệu tập trung .................................................. 41
3.1.1 Phân lớp Naive Bayes ......................................................................... 41
3.1.2 Tree Augmented Naive Bayes ............................................................ 44
3.2
Một số giải thuật phân lớp dữ liệu phân tán ................................................... 48
3.2.1 Phân lớp Naive Bayes cho dữ liệu phân tán........................................ 48
3.2.2 Phân lớp Tree Augmented Naive Bayes cho dữ liệu phân tán ........... 51
3.3
Kết luận ........................................................................................................... 55
Chương 4 Cài đặt thử nghiệm ................................................................................... 56
4.1
Mục đích cài đặt thử nghiệm .......................................................................... 56
4.2
Nguồn dữ liệu ................................................................................................. 56
4.2.1 Chuyển đổi các nguồn dữ liệu ............................................................. 57
4.2.2 Biểu diễn nguồn dữ liệu ...................................................................... 58
4.3
Phân lớp dữ liệu tập trung............................................................................... 62
4.3.1 Phân lớp tập trung ............................................................................... 62
4.3.2 Phân lớp dựa trên Naive Bayes ........................................................... 63
4.3.3 Phân lớp dựa trên TANB .................................................................... 66
4.4
Phân lớp dữ liệu phân tán ............................................................................... 71
4.4.1 Phân lớp phân tán ................................................................................ 71
4.4.2 Phân lớp dựa trên Naive Bayes ........................................................... 76
4.4.3 Phân lớp dựa trên TANB .................................................................... 79
4.5
Đánh giá .......................................................................................................... 80
4.6
Kết luận ........................................................................................................... 83
Kết luận ......................................................................................................................... 84
Tài liệu tham khảo ....................................................................................................... 86
vi
DANH SÁCH HÌNH VẼ
1.1
Sơ đồ hệ tích hợp dữ liệu ...................................................................................... 7
1.2
Ví dụ về kiến trúc cơ sở dữ liệu liên kết............................................................... 9
1.3
Kiến trúc trung gian ............................................................................................ 10
1.4
Kiến trúc kho dữ liệu .......................................................................................... 12
1.5
Phân mảnh dữ liệu: phân mảnh ngang (trái) và phân mảnh dọc (phải) .............. 13
1.6
Truy vấn dữ liệu và kết hợp kết quả trong phân lớp phân tán ............................ 18
2.1
Ví dụ về ontology cho phương tiện giao thông .................................................. 22
2.2
Ontology liên quan đến bảng dữ liệu Claims 1 .................................................. 28
2.3
Ontology liên quan đến bảng dữ liệu Claims 2 .................................................. 28
2.4
Ontology tích hợp Claim1 và Claim2................................................................. 29
2.5
Ontology biểu diễn lượng mưa ........................................................................... 31
2.6
Ontology biểu diễn nguồn dữ liệu D1 của tổ chức T1 ......................................... 34
2.7
Ontology biểu diễn nguồn dữ liệu D2 của tổ chức T2 ......................................... 34
2.8
Ontology người dùng O U(tích hợp của các ontology O1 và O2) ........................ 35
2.9
Sơ đồ hệ thống tích hợp thông tin thống kê ....................................................... 39
3.1
Phân loại Naive Bayes cho dữ liệu tập trung ..................................................... 42
3.2
Ví dụ về mạng Naive Bayes .............................................................................. 45
3.3
Ví dụ về mạng Augmented Bayes ...................................................................... 45
3.4
Giải thuật TANB cho dữ liệu tập trung .............................................................. 47
3.5
Ví dụ PlaySport đối với giải thuật Naive Bayes cho dữ liệu phân tán phân mảnh
ngang .................................................................................................................. 49
3.6
Giải thuật phân lớp Naive Bayes cho dữ liệu phân tán phân mảnh ngang ......... 49
3.7
Giải thuật phân lớp Naive Bayes cho dữ liệu phân tán phân mảnh dọc ............. 50
3.8
Phân lớp TANB cho dữ liệu phân tán phân mảnh ngang ................................... 52
3.9
Phân lớp TANB cho dữ liệu phân tán phân mảnh dọc ....................................... 54
vii
4.1
Sơ đồ phân lớp Naïve Bayes cho dữ liệu tập trung ............................................ 62
4.2
Cây bao trùm cực đại được xây dựng trên nguồn dữ liệu ADULT .................... 67
4.3
Mô hình TANB cho nguồn dữ liệu ADULT ...................................................... 67
4.4
Cây trùm cực đại được xây dựng dựa trên nguồn dữ liệu CARS ....................... 68
4.5
Mô hình TANB cho nguồn dữ liệu CARS ......................................................... 68
4.6
Cây bao trùm cực đại của nguồn dữ liệu NURSERY ........................................ 69
4.7
Mô hình TANB cho nguồn dữ liệu NURSERY ................................................. 69
4.8
Mô hình gọi các đối tượng từ xa (RMI) ............................................................ 72
4.9
Sử dụng RMI registry nhận tham chiếu của một đối tượng từ xa ...................... 73
4.10
Sơ đồ phân lớp Naïve Bayes cho dữ liệu phân tán ............................................. 75
viii
DANH SÁCH CÁC BẢNG
2.1
Nguồn dữ liệu Claims 1 ...................................................................................... 26
2.2
Nguồn dữ liệu Claims 2 ...................................................................................... 26
2.3
Các ánh xạ hỗ trợ tích hợp các ontology ............................................................ 29
3.1
Nguồn dữ liệu PlaySport cho phân lớp Naive Bayes ......................................... 43
4.1
Thuộc tính và các giá trị thuộc tính có thể có (ADULT) ................................... 59
4.2
Thuộc tính và các giá trị của thuộc tính sau khi đã rời rạc hóa (ADULT) ......... 60
4.3
Thuộc tính và các giá trị thuộc tính có thể có (CARS) ...................................... 61
4.4
Thuộc tính và các giá trị có thể có của thuộc tính (NURSERY)........................ 61
4.5
Kết quả phân lớp tập trung theo phương pháp Naïve Bayes .............................. 65
4.6
Kết quả phân lớp TANB cho các nguồn dữ liệu ................................................ 71
4.7
Bảng dữ liệu ánh xạ dùng cho thuần nhất thuộc tính ......................................... 75
4.8
Kết quả phân lớp theo phương pháp Naive Bayes ............................................. 79
4.9
Kết quả phân lớp phân tán theo phương pháp TANB ........................................ 79
4.10
Kết quả phân lớp dữ liệu sử dụng thuật toán Naive Bayes cho môi trường tập
trung và phân tán ........................................................................................ 80
4.11
Kết quả phân lớp dữ liệu sử dụng thuật toán Augmented Naive Bayes cho
môi trường tập trung và phân tán ................................................................ 80
ix
KÝ HIỆU VIẾT TẮT
NB
Naïve Bayes
TANB
Tree Augmented Naïve Bayes
EOC
Equational Ontological Conflicts
INDUS
Intelligent Data Understanding System
CAD
Computer-Aided Design
DXF
Drawing Exchange Format
FDBS
Federated Databases System
SVM
Support vector machines
GO
Gene Ontology
ETAN
Extended Tree Augmented Naïve Bayes
SAN
Selective Augmented Bayesian
AODE
Averaged One-Dependence Estimator
UCI
University California Irvine
XML
Extensible Markup Language
RMI
Remote Method Invoke
1
MỞ ĐẦU
Đặt vấn đề
Những phát triển trong công nghệ truyền thông và trong công nghệ lưu trữ
dữ liệu dưới dạng số cùng với sự phát triển về khả năng thu nhận và lưu trữ dữ liệu
tạo nên sự phong phú và đa dạng về các dạng và các nguồn dữ liệu. Hiện nay,
chúng ta đã có khả năng thu thập các nguồn dữ liệu lớn thuộc nhiều lĩnh vực khác
nhau, như trong y học (dữ liệu về ADN, dữ liệu về các chuỗi protein, dữ liệu về các
chuỗi gen), trong thương mại (dữ liệu về hàng hoá, dữ liệu khách hàng, dữ liệu về
các giao dịch), trong địa lý (dữ liệu về thông tin bề mặt trái đất).
Sự đa dạng về nguồn thông tin trong cùng một lĩnh vực đặt ra khó khăn cho
nhu cầu kết hợp các nguồn dữ liệu để cung cấp những thông tin cần thiết cho người
sử dụng. Xét ví dụ về một người dùng muốn tìm mua một máy tính xách tay trên
mạng. Để có thể đưa ra được quyết định cuối cùng, người dùng sẽ truy cập đến
nhiều trang web khác nhau. Tại mỗi trang web, người dùng có thông tin về giá
thành, chế độ bảo hành, thời gian bảo hành. Sau khi so sánh các thông số trên,
người dùng sẽ đưa ra được loại máy tính mà mình cần mua.
Trong tự động hóa quá trình tìm kiếm thông tin, các hệ thống trợ giúp người
dùng sẽ lấy thông tin từ các nguồn dữ liệu tại các trang web khác nhau, thực hiện
việc so sánh và đưa ra gợi ý cho người dùng. Thông thường dữ liệu từ các nguồn
này có các đặc trưng phân tán, tự trị và không thuần nhất.
Tính phân tán: Các nguồn dữ liệu thường được lưu trữ phân tán tại các
vị trí khác nhau và hoàn toàn độc lập với nhau. Do vậy, khi cần lấy thông
tin, hệ thống phải xác định được vị trí lưu trữ của các nguồn dữ liệu.
Tính không thuần nhất: Thể hiện dưới nhiều dạng: không thuần nhất về
cấu trúc, không thuần nhất về khuôn dạng dữ liệu và không thuần nhất về
ngữ nghĩa. Không thuần nhất về cấu trúc có nghĩa là mỗi nguồn dữ liệu
khác nhau sử dụng một cấu trúc khác nhau để lưu trữ dữ liệu. Không
2
thuần nhất về khuôn dạng dữ liệu là các nguồn dữ liệu không sử dụng
cùng một khuôn dạng trong quá trình lưu trữ dữ liệu. Đặc biệt là không
thuần nhất về ngữ nghĩa, đó là việc sử dụng những biểu diễn khác nhau
cho một đối tượng. Dạng đơn giản của không thuần nhất ngữ nghĩa là sử
dụng các tên gọi khác nhau cho một đối tượng xác định. Xét ví dụ về hai
bảng dữ liệu của công ty kinh doanh thiết bị xe máy Honda.
Thiết bị
Lốp trước
Lốp sau
Đĩa phanh
Dây phanh
Hộp dầu
…
Giá bán
137.060
155.100
750.000
28.500
160.000
…
VAT
13.706
15.510
75.000
2.850
16.000
…
Bảng 1: Nguồn dữ liệu D1
Mặt hàng
Lốp 2.75
Vành đúc
Phanh đĩa
Má phanh
Vành nan
…
Giá
Thuế
155.100
15.500
1.150.000 115.000
1.000.000 100.000
61.000
6.100
169.000
16.900
…
…
Bảng 2: Nguồn dữ liệu D2
Khi muốn so sánh giá của các thiết bị thuộc hai nguồn dữ liệu D1 và D2,
hệ thống cần hiểu rằng “Lốp sau” ở nguồn D1 và “Lốp 2.75” ở
nguồn D2 là cùng chỉ đến một đối tượng. Trong quá trình lưu trữ,
“Thiết bị” ở nguồn D1 và “Mặt hàng” ở nguồn D2 đều là tên trường
dữ liệu lưu trữ tên của các đối tượng.
Tính tự trị: Các nguồn dữ liệu xác định cấu trúc và định dạng lưu trữ khi
xây dựng. Các hệ thống khác khi muốn sử dụng thông tin của các nguồn
chỉ có thể lấy thông tin mà không thể thay đổi về cấu trúc cũng như định
dạng. Hoạt động của các nguồn dữ liệu là hoàn toàn độc lập với các đối
tượng khác.
Để có thể tích hợp thông tin trong môi trường phân tán và không thuần nhất,
cần phải đưa ra các giải pháp cho vấn đề phân tán và không thuần nhất về ngữ
nghĩa. Trong phần tiếp theo, luận văn tập trung trình bày các nghiên cứu về tích hợp
thông tin và giải pháp thuần nhất ngữ nghĩa cho các nguồn dữ liệu.
3
Những nghiên cứu về tích hợp và phân lớp dữ liệu phân tán
Tích hợp thông tin là cách tiếp cận thông tin bằng cách kết hợp các thành
phần dữ liệu từ các hệ thống quản lý dữ liệu, các hệ thống quản lí nội dung, các kho
dữ liệu và các ứng dụng thương mại khác vào một miền chung. Tích hợp thông tin
được nghiên cứu và sử dụng rộng rãi trong lĩnh vực tài chính [21] với giải pháp
quản lí các biểu diễn ngữ nghĩa dựa trên EOC (Equational Ontological Conflicts),
nhằm tạo ra sự thuần nhất trong việc biểu diễn và tính toán dữ liệu tại các nguồn dữ
liệu khác nhau.
Trong sinh học [8], Caragea (2005) cùng các cộng sự xây dựng INDUS
(Intelligent Data Understanding System) như một hệ thống trả lời các truy vấn
người dùng từ các nguồn dữ liệu phân tán và không thuần nhất về ngữ nghĩa.
INDUS xây dựng một hệ thống các ontology cho quá trình thuần nhất ngữ nghĩa các
nguồn dữ liệu. Để giải quyết vấn đề mất thông tin trong việc sử dụng định dạng dựa
trên CAD như DXF để biểu diễn dữ liệu cho bài toán tích hợp thông tin địa lý, F.
Fonseca đưa ra một hướng tiếp cận dựa trên role [22]. Ở đây, role thực hiện vai trò
cầu nối giữa các cấp độ chi tiết khác nhau trong một cấu trúc ontology.
Một trong lớp những giải thuật học máy, phân lớp dữ liệu nhận được sự
quan tâm của nhiều nhà nghiên cứu. Caragea [10] trình bày các giải thuật học từ dữ
liệu thông qua việc cải tiến các giải thuật phân lớp tập trung thành các giải thuật
phân lớp phân tán trong môi trường không thuần nhất về ngữ nghĩa. Ferrari [20] khi
nghiên cứu về gien liên quan đến công việc quản gia đã sử dụng phân lớp Naïve
Bayes để phân lớp dữ liệu. Phân lớp được sử dụng trong việc phân loại các văn bản
trong các công việc văn phòng ([36],[43]) và phân loại thư điện tử [54]. Trong lĩnh
vực tài chính, việc nhận dạng giả mạo cũng cần đến các giải thuật phân lớp dữ liệu
([13],[47]). ([1],[27]) đã xây dựng hệ thống phân lớp dữ liệu về bệnh nhân nhằm
xác định các trường hợp có khả năng mắc bệnh ung thư cho các nghiên cứu về y
học.
4
Mục tiêu của luận văn
Với nguồn dữ liệu huấn luyện sử dụng trong giai đoạn xây dựng mô hình và
nguồn dữ liệu kiểm thử sử dụng trong giai đoạn phân lớp, bài toán phân lớp dữ liệu
trong môi trường phân tán được chia thành các lớp bài toán sau:
Bài toán 1: Phân lớp dữ liệu với nguồn dữ liệu huấn luyện ở dạng phân
tán và nguồn dữ liệu kiểm thử ở dạng tập trung.
Bài toán 2: Phân lớp dữ liệu với nguồn dữ liệu huấn luyện ở dạng tập
trung và nguồn dữ liệu kiểm thử ở dạng phân tán.
Bài toán 3: Phân lớp dữ liệu với nguồn dữ liệu huấn luyện ở dạng phân
tán và nguồn dữ liệu kiểm thử ở dạng phân tán.
Luận văn tập trung giải quyết bài toán 1 với nguồn dữ liệu huấn luyện ở dạng
phân tán và nguồn dữ liệu kiểm thử ở dạng tập trung. Sau khi giải quyết xong bài
toán 1, bằng cách xây dựng nguồn dữ liệu tập trung dựa trên những dữ liệu huấn
luyện phân tán và phân tán nguồn dữ liệu kiểm thử ta có được hướng giải quyết cho
bài toán 2. Giải pháp cho bài toán 3 dựa vào giải pháp cho vấn đề phân tán của
nguồn dữ liệu huấn luyện (bài toán 1) và giải pháp cho vấn đề phân tán của nguồn
dữ liệu kiểm thử (bài toán 2).
Mục tiêu nghiên cứu cụ thể của luận văn:
Tìm hiểu sự không thuần nhất về ngữ nghĩa tồn tại giữa những nguồn dữ
liệu tự trị, phân tán cho việc tích hợp dữ liệu. Dựa trên cách tiếp cận
ontology, luận văn tích hợp các nguồn dữ liệu phân tán và không thuần
nhất về ngữ nghĩa thông qua việc tích hợp các ontology.
Tìm hiểu về phân lớp, các phương pháp phân lớp dữ liệu. Nghiên cứu các
phương pháp dựa trên xác suất là Naïve Bayes (NB) và Tree Augmented
Naïve Bayes (TANB). Trình bày việc áp dụng phân lớp NB, TANB cho
các nguồn dữ liệu tập trung và phân tán.
5
Tóm tắt nội dung luận văn
Phần còn lại của luận văn được tổ chức như sau:
Chương 1: Tổng quan về tích hợp thông tin và phân lớp dữ liệu phân tán.
Trong chương này, luận văn sẽ trình bày về nhu cầu tích hợp thông tin cũng như
những vấn đề cần quan tâm và phương pháp tích hợp thông tin từ các nguồn dữ liệu
phân tán. Đồng thời, giới thiệu về phân lớp dữ liệu phân tán và các phương pháp
được sử dụng trong phân lớp dữ liệu.
Chương 2: Ontology trong tích hợp thông tin phân tán và không thuần
nhất. Trình bày phương pháp tích hợp thông tin dựa trên tích hợp các ontology của
các nguồn dữ liệu mở rộng với ontology. Trong đó, luận văn cũng đưa ra được vai
trò biểu diễn ngữ nghĩa dữ liệu của ontology trong việc tích hợp thông tin phân tán
và không thuần nhất.
Chương 3: Phân lớp dữ liệu tập trung và phân tán. Nội dung chương này
nhằm trình bày một số giải thuật thường được sử dụng trong phân lớp dữ liệu. Luận
văn tập trung trình bày về phân lớp NB, phân lớp TANB trong môi trường tập trung
và phân tán do sự đơn giản trong cài đặt và độ chính xác chấp nhận được của các
phân lớp này đối với những nguồn dữ liệu cần phân lớp.
Chương 4: Cài đặt thử nghiệm. Phần này trình bày kết quả thực nghiệm cho
phân lớp NB và TANB. Sau đó, luận văn đưa ra kết luận, đánh giá về phân lớp NB,
TANB và hiệu quả của các phân lớp này đối với dữ liệu phân tán.
Kết luận trình bày những nghiên cứu về tích hợp thông tin không thuần nhất
về ngữ nghĩa, những đóng góp của luận văn và những định hướng nghiên cứu sắp
tới.
6
Chương 1
TỔNG QUAN VỀ TÍCH HỢP THÔNG TIN
VÀ PHÂN LỚP DỮ LIỆU PHÂN TÁN
Trong chương này, chúng ta sẽ tìm hiểu nhu cầu và những vấn đề cần quan
tâm trong tích hợp thông tin. Ngoài ra, chúng ta cũng định nghĩa phân lớp dữ liệu
phân tán và giới thiệu các kĩ thuật thường được dùng trong phân lớp dữ liệu phân
tán.
1.1 Tổng quan về tích hợp thông tin phân tán
Nhu cầu tích hợp thông tin
1.1.1
Công nghệ thông tin được áp dụng trong rất nhiều lĩnh vực của cuộc sống
như tài chính [21], địa lý [22] hay sinh học [8] tạo ra các thách thức cho các nhà
khoa học trong việc nghiên cứu và phát triển các kĩ thuật tích hợp thông tin. Sự phát
triển về số lượng nguồn dữ liệu cùng với yêu cầu cung cấp thông tin chính xác cho
người dùng đặt ra nhu cầu phát triển các hệ thống tích hợp thông tin đa nguồn. Tùy
theo từng lĩnh vực, các kĩ thuật phù hợp sẽ được áp dụng nhằm mang lại hiệu quả
tối ưu. Bài toán tích hợp thông tin trong môi trường phân tán có thể được tóm tắt
như sau:
Cho D1 , D2 ,..., DK là các mảnh của dữ liệu D được lưu trữ phân tán tại các trạm
1,2,..., K tương ứng. Với các ràng buộc Z, lớp các giả thiết H và các tiêu chuẩn về
hiệu năng P, nhiệm vụ của bộ phận tích hợp dữ liệu TD là sử dụng lớp các giả thiết
H để đưa ra kết quả với những phép toán được cho phép bởi Z.
Trong đó:
Z: là tập các ràng buộc trong môi trường phân tán.
H: là tập các giả thiết được sinh ra.
P: là các tiêu chuẩn về hiệu năng mà hệ thống cần đạt được.
7
Để giải quyết bài toán tích hợp thông tin, cần xây dựng được một hệ tích hợp
có thể cung cấp các truy cập trong suốt đến các nguồn dữ liệu (Hình 1.1). Hệ tích
hợp cung cấp khả năng thu thập dữ liệu được truy vấn từ các nguồn dữ liệu phân
tán, sau đó kết hợp các dữ liệu để cho ra kết quả cuối cùng. Hệ tích hợp dữ liệu cho
phép người dùng thu thập các thông tin cần thiết mà không cần quan tâm đến cách
thu thập như thế nào. Để có được điều này, hệ thống cần cung cấp một khung nhìn
tích hợp cho tất cả các nguồn dữ liệu [24]. Khi đó, người dùng có thể truy cập đến
tất cả các nguồn dữ liệu cần thiết cũng thuận tiện như truy cập đến một nguồn dữ
liệu.
Truy vấn
Truy vấn
Hệ tích hợp dữ liệu
Nguồn dữ liệu
Nguồn dữ liệu
…….
Nguồn dữ liệu
Hình 1.1: Sơ đồ hệ tích hợp dữ liệu
Những vấn đề cần quan tâm khi xây dựng hệ tích hợp
1.1.2
dữ liệu
Các ràng buộc trong môi trường phân tán
Do phân tán về mặt vật lý và chịu sự tác động của yếu tố truyền thông, các
hệ thống tích hợp khi xây dựng phải chịu những ràng buộc sau ([10]):
Không truyền dữ liệu thô từ các trạm phân tán về trạm trung tâm, dữ liệu
được truyền là các thông tin thống kê của các nguồn dữ liệu phân tán.
Ngăn chặn việc thực thi chương trình từ xa của một số nguồn dữ liệu.
Chỉ cho phép truyền dữ liệu thô trong trường hợp các nguồn dữ liệu
không hỗ trợ các phép toán thống kê.
8
Có thể cho phép việc truyền mã nguồn trong trường hợp các nguồn dữ
liệu không cung cấp được các thông tin thống kê.
Một số ứng dụng còn hạn chế lượng dữ liệu có thể được truyền đi giữa
các trạm (điều này nhằm hạn chế việc nghẽn mạng).
Những vấn đề chung
Trong việc xây dựng và sử dụng các hệ thống tích hợp dữ liệu, cần quan tâm
đến những vấn đề về thiết kế, về mô hình hóa và về thực thi hệ thống.
Về thiết kế: Một hệ thống tích hợp dữ liệu về cơ bản cũng là một hệ thống
thông tin. Bởi vậy, kiến trúc của hệ thống tích hợp cũng phải được thiết
kế sao cho các nguồn dữ liệu cần được tích hợp là các thành phần chính
của hệ thống, có vai trò cung cấp thông tin cho toàn bộ hệ thống.
Về mô hình hóa: Giống như tất cả các hệ thống thông tin khác, trong một
miền ứng dụng nào đó, một hệ thống tích hợp phải được mô hình hóa.
Về thực thi: Sau khi được thiết kế và mô hình hóa, các hệ thống tích hợp
cũng cần phải có chức năng truy vấn. Chức năng truy vấn là cầu nối quan
trọng giữa nhu cầu người dùng với khả năng đáp ứng của hệ thống. Khả
năng trả lời truy vấn của hệ thống phụ thuộc vào các khả năng trả lời truy
vấn của các nguồn dữ liệu.
1.1.3
Những phương pháp tích hợp thông tin
Có hai phương pháp thường được sử dụng là phương pháp ảo và phương
pháp kho dữ liệu. Mỗi phương pháp đều có cách tổ chức các nguồn dữ liệu trong hệ
thống tính hợp. Có ba cách tổ chức các nguồn dữ liệu là: (i) kiến trúc cơ sở dữ liệu
liên kết (federated databases), (ii) kiến trúc trung gian (mediation), (iii) kiến trúc
kho dữ liệu (data warehousing). Việc phân loại các kiến trúc trên dựa trên tiêu chí
về việc truy vấn cơ sở dữ liệu tại các nguồn dữ liệu là trước hay sau khi các truy vấn
của người dùng được gửi đến.
9
1.1.3.1 Phương pháp ảo
Trong phương pháp này, dữ liệu sẽ được truy cập mỗi khi người dùng gửi
một truy vấn tới hệ tích hợp dữ liệu. Phương pháp sử dụng kiến trúc cơ sở dữ liệu
liên kết và kiến trúc trung gian cho việc tích hợp thông tin.
Kiến trúc cơ sở dữ liệu liên kết.
Một hệ thống cơ sở dữ liệu liên kết (FDBS) bao gồm những thành phần bán
tự trị (semi-autonomous) tham gia vào một nhóm để có thể chia sẻ dữ liệu với
những thành phần khác. Các thành phần chỉ là bán tự trị bởi ngoài việc chúng có thể
độc lập hoạt động, mỗi thành phần có thể bị thay đổi bởi một giao diện dùng để giao
tiếp với tất cả các thành phần khác và với toàn nhóm.
DB1
DB2
DB3
DB4
Hình 1.2. Ví dụ về kiến trúc FDBS được xây dựng bởi 4 nguồn dữ liệu.
Theo Heimbigner và McLeod [30], để có thể vừa duy trì được tính tự trị và
vừa chia sẻ được các thông tin, các thành phần của FDBS cần phải có những tiện
ích để giao tiếp với nhau theo 3 cách sau:
Trao đổi dữ liệu: Các thành phần cần có khả năng truy cập đến các dữ
liệu có thể chia sẻ của các thành phần khác trong FDBS. Đây là mục đích
quan trọng của việc liên kết và một chiến lược tốt trong việc trao đổi dữ
liệu.
10
Chia sẻ tương tác: Trong nhiều trường hợp, một thành phần nào đó
không muốn cung cấp các truy cập trực tiếp đến nguồn dữ liệu của chúng,
nhưng có thể chia sẻ các thao tác trên nguồn dữ liệu đó. Các thành phần
cũng cần có khả năng xác định những tương tác nào chúng cần thực hiện,
và những tương tác cần được thực hiện bởi thành phần khác.
Cộng tác: Vì không có sự điều khiển tập trung nên cộng tác là vấn đề
được đặt lên hàng đầu. Mỗi nguồn dữ liệu cần có khả năng để có thể thực
thi một truy vấn phức tạp liên quan đến việc truy cập dữ liệu từ các thành
phần khác.
Kiến trúc trung gian
Truy vấn
Metadata
Mediator
Truy vấn
Truy vấn
Wrapper
Wrapper
Truy vấn
Nguồn 1
Truy vấn
…
Nguồn n
Hình 1.3. Kiến trúc trung gian
Hệ thống trung gian (Hình 1.3) tích hợp các nguồn dữ liệu không thuần nhất
bằng việc cung cấp một khung nhìn ảo cho các nguồn dữ liệu. Người dùng truy vấn
đến hệ thống thông qua giao diện chung mà không cần quan tâm đến vị trí, lược đồ
hay phương thức truy cập đến các nguồn dữ liệu. Thành phần chịu trách nhiệm cung
cấp giao diện chung được gọi là mediator (hay còn gọi là integrator), thực hiện
những hoạt động sau:
11
Nhận một truy vấn từ người dùng.
Chia truy vấn này thành các truy vấn con tới các nguồn dữ liệu thành
phần dựa vào các mô tả nguồn (source descriptions).
Tối ưu hóa việc thực thi các truy vấn.
Gửi các truy vấn con đến các wrapper của các nguồn dữ liệu thành phần.
Nhận các câu trả lời cho các truy vấn con, kết hợp các câu trả lời con và
gửi nó đến người dùng.
1.1.3.2 Phương pháp kho dữ liệu
Trong phương pháp kho dữ liệu, việc tích hợp dữ liệu của các nguồn được
thực hiện bằng việc cung cấp một khung nhìn thống nhất cho tất cả các nguồn dữ
liệu (giống như trong phương pháp ảo). Tuy nhiên, những dữ liệu tại các nguồn dữ
liệu được truy vấn trước và được lưu trữ tại một kho riêng biệt (được gọi là kho dữ
liệu: data warehousing) [55]. Việc xây dựng và bảo trì kho dữ liệu bao gồm 3 bước
quan trọng sau:
Mô hình hóa và thiết kế: Trong khi thiết kế một kho dữ liệu, người phát
triển cần phải quyết định thông tin nào sẽ được sử dụng trong kho dữ
liệu, những truy vấn nào đối với các nguồn dữ liệu cần được cụ thể hóa,
lược đồ nào là lược đồ chung cho kho dữ liệu.
Bảo trì: Việc bảo trì kho dữ liệu liên quan đến việc xác định cách thức
xây dựng kho dữ liệu từ các nguồn dữ liệu, và cách thức cập nhập thông
tin tại kho dữ liệu mỗi khi dữ liệu tại các nguồn dữ liệu được cập nhập.
Thực thi: Việc thực thi tại kho dữ liệu liên quan đến việc xử lí các truy
vấn, lưu trữ thông tin và các vấn đề về chỉ mục
12
Truy vấn
Kho dữ liệu
Metadata
Integrator
Wrapper
Nguồn 1
Wrapper
…
Nguồn n
Hình 1.4. Kiến trúc kho dữ liệu
1.1.3.3 So sánh hai phương pháp
Trong hai phương pháp ảo và phương pháp kho dữ liệu, phương pháp ảo
được ưa thích hơn trong những trường hợp sau:
Số lượng các nguồn dữ liệu trong hệ thống tích hợp lớn, các nguồn dữ
liệu thường xuyên được cập nhập. Điều này không thích hợp cho phương
pháp kho dữ liệu vì phải truy vấn nhiều nguồn dữ liệu mỗi khi các nguồn
dữ liệu cập nhập thông tin.
Không thể dự báo trước được dạng truy vấn mà người dùng sẽ sử dụng.
Bởi vì kho dữ liệu được xây dựng trên nguyên tắc các nguồn dữ liệu được
truy vấn trước và kết quả được lưu trữ tại kho dữ liệu. Nếu không thể dự
báo trước được các kiểu truy vấn của người dùng thì không thể truy vấn
các nguồn dữ liệu trước được.
Tuy nhiên, nếu các nguồn dữ liệu là cố định và không cần cập nhật thường
xuyên thì phương pháp kho dữ liệu mang lại hiệu năng cao hơn bởi giảm được thời
- Xem thêm -