BỘ GIÁO DỤC VÀ ĐÀO TẠO
VIỆN HÀN LÂM KHOA HỌC
VÀ CÔNG NGHỆ VIỆT NAM
VIỆN CÔNG NGHỆ THÔNG TIN
CAO TÙNG ANH
KHAI THÁC DỮ LIỆU PHÂN TÁN
BẢO TOÀN TÍNH RIÊNG TƯ
LUẬN ÁN TIẾN SĨ TOÁN HỌC
HÀ NỘI– 2014
BỘ GIÁO DỤC VÀ ĐÀO TẠO
VIỆN HÀN LÂM KHOA HỌC
VÀ CÔNG NGHỆ VIỆT NAM
VIỆN CÔNG NGHỆ THÔNG TIN
CAO TÙNG ANH
KHAI THÁC DỮ LIỆU PHÂN TÁN
BẢO TOÀN TÍNH RIÊNG TƯ
Chuyên ngành: BẢO ĐẢM TOÁN HỌC CHO MÁY TÍNH
VÀ HỆ THỐNG TÍNH TOÁN
Mã số: 62.46.35.01
LUẬN ÁN TIẾN SĨ TOÁN HỌC
NGƯỜI HƯỚNG DẪN KHOA HỌC:
1. PGS.TSKH. NGUYỄN XUÂN HUY
2. PGS.TS. NGUYỄN MẬU HÂN
HÀ NỘI - 2014
LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi. Các số liệu, kết quả
trong luận án là trung thực và chưa từng công bố trong bất kỳ công trình nào khác.
Tác giả luận án
Cao Tùng Anh
1
LỜI CÁM ƠN
Luận án được thực hiện và hoàn thành dưới sự hướng dẫn của PGS.TSKH.
Nguyễn Xuân Huy và PGS.TS. Nguyễn Mậu Hân. Trong thời gian thực hiện luận
án, tác giả đã nhận được sự giúp đỡ và chỉ dẫn khoa học rất tận tình từ hai người
thầy của mình để có thể hoàn thành luận án này. Nhân dịp này tác giả xin được gửi
đến hai thầy: PGS.TSKH.Nguyễn Xuân Huy và PGS.TS. Nguyễn Mậu Hân lòng
biết ơn sâu sắc và lời cám ơn chân thành nhất.
Tác giả cũng xin được trân trọng cảm ơn PGS.TS. Thái Quang Vinh, GS.TS.
Vũ Đức Thi, PGS.TS. Đoàn Văn Ban, PGS.TS. Đặng Văn Đức, PGS.TS. Ngô Quốc
Tạo, PGS.TS. Đỗ Năng Toàn, PGS.TS. Lương Chi Mai, PGS.TS.Nguyễn Thanh
Tùng là những thầy (cô) của Viện Công Nghệ Thông Tin đã quan tâm chỉ bảo, động
viên và giúp đỡ tác giả trong suốt quá trình học tập, nghiên cứu và hoàn thiện luận
án.
Tác giả cũng xin trân trọng cảm ơn PGS.TS. Lê Hoài Bắc và các bạn đồng
nghiệp trong nhóm nghiên cứu tại TP.Hồ Chí Minh đã đọc và cho những ý kiến
đóng góp quý báu cho nội dung luận án.
Cuối cùng xin chân thành cảm ơn các bạn đồng nghiệp tại khoa CNTT, trường
Đại học Công nghệ TP.Hồ Chí Minh đã cổ vũ, động viên, giúp đỡ về nhiều mặt cho
tác giả trong thời gian thực hiện luận án.
2
MỤC LỤC
LỜI CAM ĐOAN ......................................................................................................1
LỜI CÁM ƠN ............................................................................................................2
MỤC LỤC ..................................................................................................................3
DANH MỤC CÁC HÌNH .........................................................................................5
DANH MỤC CÁC BẢNG ........................................................................................7
DANH MỤC TỪ VIẾT TẮT....................................................................................8
PHẦN MỞ ĐẦU ........................................................................................................9
CHƯƠNG 1 Một số khái niệm về cơ sở dữ liệu phân tán, khai thác dữ liệu và
bảo toàn tính riêng tư .............................................................................................19
1.1. Cơ sở dữ liệu phân tán ....................................................................................19
1.1.1. Khái niệm cơ sở dữ liệu phân tán ...................................................................... 19
1.1.2. Cơ sở dữ liệu phân tán ngang ............................................................................ 19
1.1.3. Cơ sở dữ liệu phân tán dọc ................................................................................ 21
1.2. Khai thác dữ liệu.............................................................................................23
1.2.1. Khái niệm khai thác dữ liệu ............................................................................... 23
1.2.2. Một số thuật toán khai thác dữ liệu.................................................................... 24
1.3. Bảo đảm tính riêng tư .....................................................................................31
1.3.1. Khái niệm........................................................................................................... 31
1.3.2. Phân loại các phương pháp PPDM .................................................................... 32
1.3.3. Đánh giá một thuật toán PPDM ......................................................................... 34
1.4. Một số phương pháp giấu dữ liệu ...................................................................35
1.4.1. Xáo trộn ............................................................................................................. 35
1.4.2. Ngăn chặn .......................................................................................................... 36
1.4.3. Gom / trộn .......................................................................................................... 36
1.4.4. Đổi chỗ............................................................................................................... 36
1.4.5. Lấy mẫu ............................................................................................................. 37
1.4.6. Ứng dụng lý thuyết giàn giao ............................................................................ 41
1.5. Một số kỹ thuật khai thác dữ liệu bảo đảm tính riêng tư................................49
1.5.1. Kỹ thuật chỉnh sửa dữ liệu trong cơ sở dữ liệu nhị phân ................................... 49
1.5.2. Kỹ thuật thay giá trị dữ liệu thật bằng giá trị không xác định ........................... 53
1.5.3. Phương pháp tái tạo ........................................................................................... 56
1.6. Kết chương .....................................................................................................58
CHƯƠNG 2 Khai thác dữ liệu trên CSDL phân tán ...........................................60
2.1. Giới thiệu ........................................................................................................60
3
2.2. Khai thác trên cơ sở dữ liệu phân tán dọc ......................................................60
2.2.1. Cách thực hiện ................................................................................................... 60
2.2.2. Thuật toán khai thác trên CSDL phân tán dọc với phép kết ngoại .................... 62
2.2.3. Thuật toán khai thác CSDLPT dọc với phép kết ngoại hai chiều ...................... 66
2.2.4. Thuật toán khai thác CSDLPT dọc bằng phép kết tự nhiên .............................. 68
2.3. Khai thác trên cơ sở dữ liệu phân tán ngang ..................................................73
2.3.1. Cách thực hiện ................................................................................................... 73
2.3.2. Nhận xét phương pháp ....................................................................................... 75
2.4. Khai thác song song tập phổ biến trên CSDL phân tán .................................75
2.4.1. Đặt vấn đề .......................................................................................................... 75
2.4.2. Mô hình khai thác .............................................................................................. 76
2.4.3. Thuật toán khai thác tập phổ biến trên Master................................................... 78
2.5. Khai thác tập mục có lợi ích cao ....................................................................81
2.5.1. Đặt vấn đề .......................................................................................................... 81
2.5.2. Khai thác tập mục có lợi ích cao........................................................................ 81
2.6. Kết chương .....................................................................................................86
CHƯƠNG 3 Khai thác dữ liệu phân tán bảo đảm tính riêng tư ........................87
3.1. Giới thiệu chương ...........................................................................................87
3.2. Khai thác CSDL phân tán dọc bảo đảm tính riêng tư ....................................87
3.2.1. Đặt vấn đề .......................................................................................................... 87
3.2.2. Thuật toán .......................................................................................................... 88
3.2.3. Minh họa thuật toán: .......................................................................................... 89
3.3. Khai thác CSDL phân tán ngang bảo đảm tính riêng tư ................................94
3.3.1. Đặt vấn đề .......................................................................................................... 94
3.3.2. Một số công cụ tính toán đa bên an toàn. .......................................................... 95
3.3.3. Giải thuật khai thác tập phổ biến đảm bảo riêng tư và chống thông đồng trên dữ
liệu phân tán ngang. .....................................................................................................
96
3.4. Giao thức khai thác CSDL phân tán ngang bảo đảm tính riêng tư ..............107
3.4.1. Đặt vấn đề ........................................................................................................ 107
3.4.2. Cơ sở lý thuyết ................................................................................................. 108
3.4.3. Giao thức khai thác .......................................................................................... 109
3.4.4. Đánh giá giao thức ........................................................................................... 113
3.4.5. Thực nghiệm giao thức .................................................................................... 113
3.5. Kết chương ...................................................................................................114
PHẦN KẾT LUẬN................................................................................................116
DANH MỤC CÔNG TRÌNH ĐÃ CÔNG BỐ.....................................................120
TÀI LIỆU THAM KHẢO ....................................................................................121
4
DANH MỤC CÁC HÌNH
Hình 1.1. Thuật toán IT-Tree phát sinh tập phổ biến thỏa ngưỡng minsup............30
Hình 1.2. Kết quả khai thác với ngưỡng minsup=50%...........................................31
Hình 1.3. Đồ thị dàn các tập mục thường xuyên ....................................................43
Hình 1.4. Gian giao đầy đủ của tập Poset (ABE) ...................................................44
Hình 1.5. Thuật toán Itemhide- Ẩn tập mục nhạy cảm...........................................46
Hình 1.6. Thuật toán 1a ...........................................................................................51
Hình 1.7. Thuật toán 1b...........................................................................................51
Hình 1.8. Thuật toán 2a ...........................................................................................52
Hình 1.9. Thuật toán 2b...........................................................................................52
Hình 2.1. Mô hình hoạt động khai thác luật trên CSDL phân tán ..........................60
Hình 2.2. Thuật toán Eclat_Distribute_Left_Join ...................................................63
Hình 2.3. Biểu diễn các mục đơn của DB1 .............................................................65
Hình 2.4. Biểu diễn các mục đơn của DB1 và DB2 .................................................65
Hình 2.5. Kết quả khai thác trên CSDL phân tán với phép kết Left-join ...............66
Hình 2.6. Thuật toán Eclat_Distribut_Full_Join .....................................................67
Hình 2.7. Kết quả khai thác trên CSDLPT dọc với phép kết ngoại hai chiều .......68
Hình 2.8. Thuật toán phát sinh tập phổ biến thỏa ngưỡng minsup .........................69
Hình 2.9. Cây biểu diễn các mục đơn của DB1 và DB2 ..........................................71
Hình 2.10. Cây biểu diễn khai thác tập phổ biến trên CSDL phân tán ...................71
Hình 2.11. Mô hình tổng quát khai thác trên CSDL phân tán ngang .....................77
Hình 2.12. Trao đổi thông tin và khai thác tâp phổ biến giữa Master và Slaver ....77
Hình 2.13. Kết quả khai thác từ Slave 1 theo thuật toán Eclat ...............................78
Hình 2.14. Kết quả khai thác từ Slave 2 theo thuật toán Eclat ...............................78
Hình 2.15. Thuật toán PEclat ..................................................................................79
Hình 2.16. Kết quả của PEClat với minsup=50%...................................................80
Hình 2.17. Cây WIT-Tree .......................................................................................82
Hình 2.18. Thuật toán TWU-Mining ......................................................................83
Hình 2.19. Minh họa thuật toán TWU-Mining .......................................................84
Hình 3.1. Thuật toán phát sinh tập phổ biến ...........................................................88
Hình 3.2. Sơ đồ hoạt động của thuật toán ...............................................................89
Hình 3.3. Kết quả tạo ra lớp tương đương []
.......................................................91
Hình 3.4. Kết quả khai thác trên CSDL phân tán dọc.............................................91
Hình 3.5. Thủ tục Create_Fitree..............................................................................98
Hình 3.6. Thủ tục Secure_Support(X) ....................................................................98
Hình 3.7. Thủ tục Extend_Fitree& Upper_Bound ..................................................99
5
Hình 3.8. Thủ tục Upper_Bound ...........................................................................100
Hình 3.9. Kết quả FITree sau khi xử lý nút gốc....................................................101
Hình 3.10. Kết quả FITree sau khi xử lý nút A.....................................................102
Hình 3.11. Sự phụ thuộc thời gian vào số lượng máy trên CSDL Accident ........107
Hình 3.12. Sự phụ thuộc thời gian vào số lượng máy trên CSDL bảo hiểm ........107
Hình 3.13. Giao thức đảm bảo tính riêng tư ........................................................110
Hình 3.14. CSDL tập trung và CSDL phân tán ...................................................112
Hình 3.15. Các bên tính độ hỗ trợ cục bộ ............................................................112
Hình 3.16. Tính độ hỗ trợ toàn cục và tập phổ biến toàn cục ..............................112
Hình 3.17. So sánh tổng chi phí của GTDX và GT M.Hussein............................114
6
DANH MỤC CÁC BẢNG
Bảng 1.1. Quan hệ dự án (DA) ...............................................................................19
Bảng 1.2. Kết quả phân tán ngang nguyên thủy .....................................................20
Bảng 1.3. Quan hệ chi trả ........................................................................................20
Bảng 1.4. Quan hệ nhân viên ..................................................................................20
Bảng 1.5. Kết quả phân mảnh ngang dẫn xuất quan hệ NV ...................................21
Bảng 1.6. Quan hệ nhân viên ..................................................................................21
Bảng 1.7. Kết quả phân tán dọc từ bảng 1.6 ...........................................................22
Bảng 1.8. Cơ sở dữ liệu giao dịch ...........................................................................30
Bảng 1.9. CSDL T 22 giao tác được viết thành 2 mảnh .........................................42
Bảng 1.10. Tập mục thường xuyên theo ngưỡng = 4 ..........................................42
Bảng 1.11. So sánh các thuật toán...........................................................................50
Bảng 2.1. Cơ sở dữ liệu của Master ........................................................................61
Bảng 2.2. Cơ sở dữ liệu của Slave ..........................................................................61
Bảng 2.3. Cơ sở dữ liệu sau khi kết ........................................................................61
Bảng 2.4. Cơ sở dữ liệu của 2 bên tham gia khai thác ............................................64
Bảng 2.5. Cơ sở dữ liệu kết ngoại (Left Join) .........................................................64
Bảng 2.6. CSDL với phép kết ngoại “hai chiều” ...................................................66
Bảng 2.7. Cơ sở dữ liệu của 2 bên tham gia khai thác ............................................69
Bảng 2.8. Cơ sở dữ liệu của bên A kết với bên B ...................................................70
Bảng 2.9. Kết quả thực nghiệm trên CSDL CO-OP Mark TP.HCM......................73
Bảng 2.10. Cơ sở dữ liệu của Master ......................................................................74
Bảng 2.11. Cơ sở dữ liệu của Slave ........................................................................74
Bảng 2.12. Cơ sở dữ liệu sau khi hội Master và Slave ...........................................74
Bảng 2.13. CSDL mẫu ............................................................................................76
Bảng 2.14. Cơ sở dữ liệu phân tán của bảng 2.13...................................................76
Bảng 2.15. Bảng giá trị khách quan ........................................................................82
Bảng 2.16. Bảng giá trị chủ quan ............................................................................82
Bảng 2.17. Bảng CSDL thực nghiệm......................................................................85
Bảng 2.18. Bảng thực nghiệm 2 thuật toán trong CSDL BMS-POS ......................85
Bảng 2.19. Bảng thực nghiệm 2 thuật toán trong CSDL Retail..............................86
Bảng 3.1. CSDL thực của hai bên Master và Slave ................................................89
Bảng 3.2. CSDL giả của hai bên Master và Slave ..................................................90
Bảng 3.3. Kết quả thực nghiệm trên CSDL CO-OP Mart TP.HCM.......................93
Bảng 3.4. Minh họa hệ thống gồm 2 bên S1, S2 ....................................................101
Bảng 3.5. Thời gian chạy trên CSDL Accidents...................................................106
Bảng 3.6. Thời gian chạy trên CSDL bảo hiểm ....................................................106
Bảng 3.7. Thông tin về các CSDL thực nghiệm ...................................................114
7
DANH MỤC TỪ VIẾT TẮT
STT
1
2
3
4
Từ viết tắt
CSDL
CSDLPT
GTDX
WIT-Tree
Diễn giải tiếng Anh
Database
Database distributed
Proposed protocol
Weighted Itemset-Tidset
tree
Diễn giải tiếng Việt
Cơ sở dữ liệu
Cơ sở dữ liệu phân tán
Giao thức đề xuất
Cây tập mục-tập giao dịch có trọng số
5
6
7
8
9
TWU
FI
FP-tree
FDM
SVM
Cây lợi ích có trọng số
Tập phổ biến
Cây khai thác song song nhanh
Khai thác phân tán nhanh
Sử dụng vectơ trong hỗ trợ phân lớp
10
PPDM
11
RSA
12
13
SM
MST
Tree Weighted Utility
Frequent Itemsets
Fast Parallel tree
Fast Distributed Mining
Support Vector
machines
Privacy Preserving Data
Mining
Revest-ShamirAdleman
Safety margin
Min support
14
MFI
Tập phổ biến tối đại
15
16
17
18
19
20
MCT
TID
IT-Tree
HUIs
DBS
SH
Maximal Frequent
Itemset
Min Confident
Transaction index
Itemset Tidset tree
High Utility Itemsets
Dynamic Bit String
Semi Honest
Khai thác dữ liệu bảo toàn tính riêng tư
Hệ mã hóa RSA
Ngưỡng an toàn
Độ hỗ trợ tối tiểu
Ngưỡng độ tin cậy
Chỉ mục của giao dịch
Cây tập mục -tập giao dịch
Tập tiện ích cao
Chuỗi bít động
Trung thực một nửa
8
PHẦN MỞ ĐẦU
1. Đặt vấn đề
Cơ sở dữ liệu (CSDL) phân tán là một cấu trúc dữ liệu hiện nay đang phát
triển rất nhanh và chúng ta thường gặp chúng trong thực tế như : CSDL của một hệ
thống ngân hàng, của các công ty bảo hiểm, của các tổng công ty thương mại có
một hệ thống cửa hàng phát triển ở nhiều nơi hay như CSDL của các thành viên
thuộc tổ chức cảnh sát quốc tế .v.v.
Khai thác dữ liệu là quá trình tìm kiếm các mẫu mới, những thông tin tiềm ẩn
mang tính dự đoán trong các khối dữ liệu lớn. Những công cụ khai thác dữ liệu có
thể phát hiện những xu hướng trong tương lai, các tri thức mà khai thác dữ liệu
mang lại cho các đơn vị có thể ra các quyết định kịp thời và trả lời những câu hỏi
trong lĩnh vực mà trước đây tốn rất nhiều thời gian để xử lý. Với ưu điểm trên, khai
thác dữ liệu đã chứng tỏ được tính hữu dụng của nó trong môi trường kinh doanh
đầy tính cạnh tranh ngày nay và được ứng dụng rộng rãi trong các lĩnh vực thương
mại, tài chính, điều trị y học, giáo dục, viễn thông, quốc phòng .v.v.
Trong thực tế, phần lớn CSDL phân tán dùng để khai thác thường liên quan
đến nhiều cá nhân hoặc nhiều tổ chức. Bản thân dữ liệu là thông tin nhạy cảm hoặc
quá trình phân tích dữ liệu cho ra tri thức có tính nhạy cảm. Một số tổ chức muốn
chia sẻ dữ liệu theo kiểu cùng phối hợp dữ liệu để khai thác trên dữ liệu chung,
nhưng mỗi bên lại muốn đảm bảo tính riêng tư cho dữ liệu của chính mình. Khai
thác dữ liệu phân tán đảm bảo tính riêng tư là hướng nghiên cứu nhằm đề ra giải
pháp bảo vệ tính riêng tư của dữ liệu lẫn tri thức trước và sau khi thực hiện khai
thác trên dữ liệu.
Ví dụ 1
Khi nhiều bệnh viện muốn cùng nhau phối hợp dữ liệu để khai thác cho ra
những thông tin có ích cho việc phòng và chữa một số bệnh chung thì dữ liệu về
thông tin của một cá nhân như: tên, địa chỉ, ngày sinh, số điện thoại, thu nhập, bệnh
tật, … là thông tin nhạy cảm cần phải được sửa đổi, mã hóa hoặc che giấu theo cách
9
nào đó để bên sử dụng dữ liệu không thể phát hiện và vi phạm tính riêng tư của họ.
Nhưng mặt khác, dữ liệu được sử dụng vẫn phải là đáng tin cậy.
Ví dụ 2
Công ty A có một CSDL về các giao dịch bán hàng, CSDL này chứa đựng một
số tri thức rất có lợi cho hoạt động kinh doanh. Công ty B mong muốn cùng được
chia sẻ dữ liệu với công ty A. Vì mối quan hệ, A đồng ý nhưng vì liên quan đến
chiến lược kinh doanh, trước khi gửi cơ sở dữ liệu cho B, A đã thay đổi dữ liệu theo
chiều hướng giấu đi những tri thức nhạy cảm mà A cho là quan trọng và không
muốn tiết lộ.
Ví dụ 3
Cơ quan tình báo của một nước X quan sát hoạt động Tx = (x1, x2, …, xn) trong
một thời gian dài. Cơ quan tình báo của Y cũng quan sát một hoạt động Ty (y1, y2,
…, ym) trong một thời gian dài. Họ muốn tìm ra những hoạt động của Ty có tương
quan với bất kỳ hoạt động nào của Tx hay không. Kết quả của sự phối hợp dữ liệu
có thể giúp cả 2 nước hiểu ra khuynh hướng hoạt động của các đối tượng, như các
hành vi của các tổ chức bị nghi ngờ là khủng bố, những hoạt động quân sự chống
đối với từng quốc gia. Tuy nhiên cả X lẫn Y đều không muốn tiết lộ những thông
tin thật của mình cho những nước kia vì họ không hoàn toàn tin tưởng lẫn nhau. Vì
vậy, trước khi phối hợp dữ liệu để khai thác, hai bên sẽ thống nhất một phương
pháp chung để không làm lộ dữ liệu thật của bên này cho phía bên kia và ngược lại.
Trường hợp một và trường hợp hai là bài toán thay đổi dữ liệu để việc chia sẻ
dữ liệu không làm mất đi một số tri thức nhạy cảm. Ở ví dụ sau cùng, hai hay nhiều
tổ chức đều có dữ liệu riêng và cùng muốn khai thác trên dữ liệu chung của các bên,
nhưng không ai muốn tiết lộ dữ liệu của mình. Các bên phải phối hợp để tìm ra một
phương cách chung, từ đó vẫn khai thác được các tri thức có ích cho mỗi bên và vẫn
bảo toàn riêng tư cho dữ liệu của các bên tham gia.
Một ví dụ điển hình truyền thống là việc mua bán hàng ở các cửa hàng khác
nhau của cùng một cộng đồng khách hàng, một cửa hàng có thể chỉ chuyên việc
mua bán hàng tạp phẩm, trong khi cửa hàng kia dùng cho việc mua bán quần áo. Sử
dụng một chìa khoá duy nhất là mã khóa khách hàng, người ta có thể khai thác
10
những quy luật liên quan đến việc mua bán những mặt hàng khác nhau. Một ví dụ
tương tự liên quan đến hai bệnh viện khác nhau cùng phục vụ một cộng đồng, một
bệnh viện chuyên về các bệnh Tai - Mũi - Họng và bênh viện khác chuyên các bệnh
về Mắt. Nếu hai bệnh viện kết hợp dữ liệu lại người ta có thể tìm ra những quy luật
về bệnh thông qua khóa là mã bệnh nhân. Rõ ràng nếu tất cả các bên tham gia cùng
muốn chia sẻ dữ liệu của mình để tiến hành việc khai thác thì vấn đề sẽ được giải
quyết. Ở đây chúng ta đề cập đến vấn đề nhạy cảm là các bên sẽ cố gắng bảo vệ tính
bảo mật CSDL riêng của mình và thoả hiệp để thực hiện quy trình khám phá kiến
thức từ CSDL chung.
Các nghiên cứu liên quan
Hiện nay, theo tìm hiểu của tác giả luận án về các nghiên cứu khai thác dữ liệu
cho thấy, phần lớn các hướng nghiên cứu thường tập trung vào khai thác các tập
phổ biến từ một số lượng lớn dữ liệu tập trung, tất cả dữ liệu được lưu trữ tại một vị
trí. Gần đây, cũng có một số tác giả [22],[29],[31],[37] đề xuất hướng nghiên cứu
khai thác dữ liệu trên cơ sở dữ liệu phân tán ngang, có quan tâm đến việc bảo toàn
tính riêng tư của các bên tham gia.
Thuật toán SFDM [33]: Được đề xuất bởi Murat Kantarcioglu và Chris Clifton
(2004), là sự cải tiến của thuật toán FDM(Fast Distributed Mining) trong [21] nhằm
đảm bảo tính riêng tư. Tác giả đã áp dụng tính chất giao hoán của hệ mã hóa
RSA(Rivest-Shamir-Adleman) để ẩn danh nguồn gốc của các itemsets trong quá
trình trao đổi. Để bảo vệ độ phổ biến cục bộ của tập phổ biến X (Itemset X), mỗi
i
i
bên tham gia khai thác thứ i bất kỳ (Si) sử dụng độ hỗ trợ vượt ngưỡng Xexcess=| X|
i
+ s%×| DB| thay cho độ hỗ trợ cục bộ. Ví dụ: S1 phát sinh số bí mật R1, tính v1 =
1
2
Xexcess+ R1 và gởi v1 đến S2, S2 tính v2 = v1 + Xexcess và gởi kết quả đến S3,…, sau
m
khi tính vm = vm-1 + Xexcess, Sm thực hiện phép so sánh riêng tư vm với R1 trong S1.
Nếu vm ≥ R1 thì X là phổ biến toàn cục. Theo tác giả của bài báo, thuật toán SFDM
chỉ an toàn khi không có sự thông đồng trong hệ thống, cụ thể nếu Si-1 và Si+1 thông
đồng với nhau thì có thể suy ra giá trị riêng của Si.
11
Thuật toán CRDM [39]: Được đề xuất bởi Urabe (2007). Ý tưởng chính của
thuật toán là thực hiện phép tính tổng an toàn, bằng cách chia nhỏ mỗi giá trị riêng
tư đến một số bên khác nhau trong hệ thống, để từ đó nhận được kết quả cuối cùng.
Tác giả đã chứng minh rằng, tính riêng tư trong thuật toán CRDM có thể bị vi phạm
khi có ít nhất n-2 bên thông đồng với nhau.
Thuật toán của Vladimir Estivill-Castro [22] (2007): Tác giả đã sử dụng kỹ
thuật mã hóa công khai để chia sẻ dữ liệu ẩn danh, thay thế cho mã hóa giao hoán.
Thuật toán sử dụng một bên đặc biệt (S1) để khởi tạo, phát sinh và phân phối khóa
mã hóa cho tất cả các bên còn lại trong hệ thống. S1 mã hóa dữ liệu của mình và gởi
đến S2, lần lượt các Si (i = 2, 3 ,…, m) mã hóa dữ liệu hiện có và trộn với dữ liệu
nhận được từ Si-1, sau khi loại bỏ các bộ thừa, gởi kết quả đến S(i mod m)+1. Kết thúc
thuật toán, S1 có tập dữ liệu đầy đủ nhưng đã được làm mờ nguồn gốc sở hữu. Do
chỉ sử dụng một lần lặp duy nhất nên thời gian chạy của thuật toán nhanh hơn các
thuật toán sử dụng kỹ thuật mã hóa giao hoán trước đây. Tuy nhiên, mức độ đảm
bảo riêng tư của thuật toán này phụ thuộc hoàn toàn vào bên khởi tạo.
Thuật toán của Mahmoud Hussein [31] (2008): Tác giả đã cải tiến thuật toán
trong [23] bằng cách tái sắp xếp vai trò của các bên nhằm tăng mức độ an toàn cũng
như thời gian chạy. Thuật toán đã sử dụng hai bên đặc biệt gọi là Initiator và
Combiner, Initiator có nhiệm vụ khởi tạo khóa, tính toán kết quả cuối cùng,
Combiner có nhiệm vụ sưu tập dữ liệu từ các client, xáo trộn và trao đổi với
Initiator. Mức độ đảm bảo riêng tư của thuật toán này phụ thuộc vào khả năng thông
đồng có thể xảy ra giữa Initator và Combiner.
Bắt đầu từ năm 2002, đã có một số tác giả công bố các bài nghiên cứu về kỹ
thuật khai thác dữ liệu trên cơ sở dữ liệu phân tán dọc có nghiên cứu đến bảo toàn
tính riêng tư của các bên tham gia.
Thuật toán của Boris Rozenberg và Ehud Gudes [18] (2005) các tác giả đã
trình bày thuật toán cho phép khai thác cơ sở dữ liệu phân tán dọc có 2 bên và nhiều
bên (n bên) tham gia. Thuật toán để xuất của các tác giả sử dụng thuật toán Apriori
để khai thác và bảo đảm tính riêng tư cho dữ liệu của các bên tham gia bằng cách sử
dụng một bên là trung gian để hỗ trợ cho n-1 bên khai thác mà không để lộ dữ liệu
12
của các bên tham gia. Thuật toán cũng đã đánh giá khả năng bảo toàn tính riêng tư
thông qua xác suất phát hiện dữ liệu giả từ bên khai thác với bên cung cấp dữ liệu
trong một số trường hợp cụ thể.
Mô hình khai thác CSDL phân tán dọc với n bên
Trong thuật toán này, một bên được gọi là Master sẽ nhận dữ liệu (đã được
làm giả) trực tiếp từ các bên tham gia từ đó tạo ra dữ liệu và gửi lại cho các bên
đồng thời dựa vào bên trung gian (Active slave) để biết thêm thông tin từ đó khai
thác trên cơ sở dữ liệu chung của các bên. Các bên tham gia (Slave 1,..,Slave n-2)
có nhiệm vụ cung cấp thông tin giả cho bên Master và một thông tin về số lượng
TIDS + vector cho bên trung gian. Sau khi Master khai thác xong lần lượt các bên
còn lại sẽ đổi vai trò cho nhau để mỗi bên đều được khai thác tri thức từ dữ liệu góp
chung.
Về các thuật toán khai thác song song trên cơ sở dữ liệu phân tán, năm 2001,
Parthasarathy và cộng sự [35] đã khái quát các nghiên cứu về song song hóa khai
thác luật kết hợp và kiến trúc chia sẻ bộ nhớ, cũng như xu hướng, khó khăn, sự thay
thế trong khai thác song song. Các phương pháp hầu hết đặt nền tảng trên thuật toán
Apriori. Tang và Turkia [34] vào năm 2005 cũng đề xuất mô hình khai thác song
song dựa trên ý tưởng sử dụng phương pháp FP-tree (Fast Parallel Tree) nhằm cải
tiến các thuật toán trước đó về giảm thời gian khai thác.
13
Đối với các nghiên cứu về bảo toàn tính riêng tư khi khai thác tập mục lợi ích
cao vào năm 2010 Jieh-Shan Yeh và Po-Chiang Hsu trong [28] đã đề xuất 2 thuật
toán mới HHUIF và MSICF, để đạt được mục tiêu ẩn tập phổ biến nhạy cảm sao
cho đối thủ không thể khai thác được chúng trong CSDL đã sửa đồi. Trong đề xuất
của mình, các tác giả đã xây dựng thủ tục để "làm sạch" CSDL ban đầu. Quá trình
"làm sạch" là các hoạt động trên CSDL gốc để loại bỏ một số lượng nhỏ các mặt
hàng trong các giao dịch chứa tập phổ biến nhạy cảm, làm giảm độ tiện ích dưới
ngưỡng khai thác. Ngoài ra, bằng cách giảm các sai sót khi ẩn, cách tiếp cận của
nghiên cứu này đã giảm thiểu các tác động trên CSDL đã ẩn tập phổ biến nhạy cảm.
Sai sót khi sau khi ẩn được đánh giá qua tỷ lệ của số tập nhạy cảm bị tiết lộ trước và
sau khi làm sạch.
Luận án tiến sỹ của tác giả Kamalika Das [30] thực hiện vào năm 2009 với đề
tài "Privacy Preserving Distributed Data Mining based on Multi-objective Optimization and Algorithmic Game Theory" đã xây dựng một kỹ thuật phân phối trung
bình trong khai thác trên CSDL phân tán dựa trên giao thức tính tổng an toàn do tác
giả đề xuất nhằm đảm bảo tính riêng tư cho các bên tham gia khai thác, chống thông
đồng giữa một số bên, với chi phí truyền thông thấp và đạt hiệu quả khai thác cao.
Phần thực nghiệm với mạng có 500 nút tham gia và với giả sử có 50%(250 nút)
thông đồng từ đầu, kỹ thuật mà tác giả của luận án đưa ra đã làm giảm dần số bên
thông đồng (do bị phát hiện) theo số lần khai thác.
Luận án tiến sỹ của tác giả Yabo Xu [45] bảo vệ vào năm 2008 với đề tài
"New Models and Techniques on Privacy-Preserving Information Sharing" đã xây
dựng một phương pháp bảo đảm tính riêng tư cho dữ liệu giao dịch khi được công
bố, nghĩa là, một chủ sở hữu dữ liệu muốn chia sẽ các dữ liệu của mình trong khi
vẫn giữ sự riêng tư cá nhân. Nghiên cứu cũng quan tâm đến sự hài hòa giữa chất
lượng dữ liệu và bảo đảm tính riêng tư cá nhân. Các nghiên cứu trong luận án có
hướng nghiên cứu và kết quả khác với luận án này.
Thuật toán bảo toàn tính riêng tư của Tung-Shou Chen và các cộng sự [38]
(2013) được xây dựng dựa trên nhận xét: các kỹ thuật bảo toàn tính riêng tư trong
khai thác dữ liệu (PPDM) hiện nay có thể không làm tiết lộ những dữ liệu nhạy cảm
14
của các bên tham gia trong khai thác dữ liệu. Tuy nhiên, các phương pháp PPDM
hiện nay có thể làm thay đổi dữ liệu ban đầu dẫn tới các kết quả khai thác từ các dữ
liệu này không thể xác nhận được tính đúng đắn tương tự như đối với dữ liệu ban
đầu. Từ đó các tác giả [38] đã đề nghị một phương pháp RPPDM (reversible
privacy preserving data mining) giúp khắc phục được nhược điểm này. Theo đánh
giá của các tác giả phương pháp RPPDM vẫn duy trì được khả năng bảo toàn thông
tin của các bên như các phương pháp PPDM trước đây và giải quyết được các khác
biệt về kết quả khai thác do sự thay đổi dữ liệu của các phương pháp PPDM.
phương pháp RPPDM được các tác giả đặt tên là PDE (Privacy difference
expansion) gồm có hai giai đoạn: giai đoạn nhiễu loạn và giai đoạn phục hồi. Giai
đoạn nhiễu loạn sử dụng một trong các phương pháp PPDM để ẩn dữ liệu nhạy cảm
và nhúng vào đó một mã khóa (wartemark), giai đoạn phục hồi là khôi phục lại các
thông tin đã ẩn bằng cách sử dụng một khóa bí mật. Do đó, những người sử dụng
"đặc biệt" có thể phục hồi dữ liệu gốc để kiểm tra độ chính xác của kết quả khai
thác.
Cũng trong năm 2013 tác giả Weiwei Fang và các cộng sự [41] đã đề xuất một
hướng giải quyết: làm thế nào để thực hiện một cách an toàn phân tích hồi quy
tuyến tính trên dữ liệu phân tán dọc có nhiều hơn 2 bên tham gia. Phương pháp
được phát triển từ phương pháp của Amirbekyan và các cộng sự trong "Privacypreserving regression algorithms" (2007). Trong giải thuật đề xuất, các tác giả đã
đưa ra phương pháp mã hóa đồng hình hoàn toàn trong khai thác dữ liệu bảo toàn
tính riêng tư thay vì sử dụng mã hóa đồng hình trong và mã hóa đồng hình ngoài
như một số tác giả khác. Trong phương pháp của các tác giả, điểm quan trọng nhất
là giao thức bảo đảm tính riêng tư khi tính hệ số hồi quy chung của các bên
"Privacy preserving regression coefficient protocol" (PPRCP) mà không bị rò rỉ dữ
liệu nhạy cảm ban đầu của các bên. Tuy nhiên theo đánh giá của các tác giả: chương
trình mã hóa đồng hình hoàn toàn này chưa hoàn thiện như phương pháp đề xuất
của Gentry C trong "A fully homomorphic encryption scheme" (2009), ở chỗ các
quy tắc điều hành trên bản rõ và bản mã trong chương trình của các tác giả vẫn cần
15
một số sửa đổi. Nhưng, ưu điểm của chương trình đề xuất này là thuật toán của họ ít
phức tạp hơn so với chương trình của Gentry C và cần thời gian tính toán ít hơn.
Với các tác giả trong nước, các tác giả Bac Le, Bay Vo, Huy Nguyễn đã đăng
bài về một cải tiến thuật toán khai thác tập mục lợi ích cao DTWU [15] vào năm
2011. Trong thuật toán của mình, các tác giả đề xuất đã sử dụng Diffset để tăng tốc
độ xử lý so với sử dụng Tidset TWU như của tác giả luận án [14]. Ở đây khi so sánh
2 thuật toán dựa trên kết quả thực nghiệm các tác giả đã kết luận : Sử dụng Diffset
hiệu quả hơn Tidset trong nhiều kết quả thực nghiệm. Ví dụ, xem xét cơ sở dữ liệu
mẫu Chess với ngưỡng tiện ích (minutil) là 75%, thời gian khai thác của TWU khai
thác (sử dụng Tidset) là 90,32s, trong khi của DTWU khai thác (sử dụng Diffset) là
65,32s. Tuy nhiên khi khai thác trong CSDL với số giao dịch thưa, sử dụng Diffset
là không hiệu quả so với Tidset, ví dụ, với CSDL Retail với ngưỡng tiện ích là 80%,
thời gian khai thác của TWU là 9,78s, thời gian khai thác của DTWU là 9,82s. Điều
này là do khi cơ sở dữ liệu thưa, trung bình kích thước của Tidsets tương tự như
kích thước Diffsets, vì vậy, Thời gian để tính toán sự khác nhau giữa hai Diffsets
giống như trong tính toán phần giao giữa hai Tidsets. Ngoài ra vào 2009 các tác giả
trên cũng đưa ra thuật toán TWU-Mining Distribute [16] (cải tiến từ thuật toán
TWU-Mining [14]) sử dụng trên CSDL phân tán dọc. Với giả sử, dữ liệu được chia
thành 2 phần theo chiều dọc và tính độ lợi ích của các mục đơn cùng lúc ở 2 bên,
sau đó một bên hỗ trợ (SlaverSide) gửi kết quả về bên (MasterSide) và sử dụng
thuật toán TWU-Mining trong [14] để tiếp tục khai thác tập mục lợi ích cao. Ở đây
các tác giả đã thực nghiệm trên cùng một CSDL và cho kết quả TWU-Mining
Distribute có thời gian thực hiện ít hơn TWU-Mining.
Luận án tiến sỹ của tác giả Lương Thế Dũng [4] thực hiện vào năm 2011 với
đề tài "Nghiên cứu xây dựng một số giải pháp đảm bảo an toàn thông tin trong quá
trình khai phá dữ liệu" đã phát triển một giao thức mới nâng cao được tính riêng tư
trong khai thác tập phổ biến trong khai thác dữ liệu phân mảnh dọc. Trong giao thức
này tác giả đã đề xuất các giao thức con để tính độ hỗ trợ và duy trì độ hỗ trợ bảo
toàn tính riêng tư. Tác giả đã đánh giá giao thức được đề xuất bảo đảm sự riêng tư
cho mỗi thành viên tham gia chống lại sự thông đồng lên đến n-1 thành viên không
16
trung thực. Ngoài ra luận án cũng đề xuất 2 giao thức cho thuật toán phân cụm EM
có bảo đảm tính riêng tư trong dữ liệu phân tán ngang. Các giao thức này của tác
giả Lương Thế Dũng đề xuất có cùng mục đích nghiên cứu nhưng có cách tiếp cận
khác với cách tiếp cận của tác giả luận án.
2. Mục đích của luận án
Mục đích đầu tiên của luận án là nghiên cứu và đề xuất các thuật toán cho
phép thực hiện việc kết hợp cơ sở dữ liệu phân tán của các bên khác nhau, cùng có
nhu cầu tham gia chia sẻ dữ liệu để từ đó các bên có thể dựa trên dữ liệu dùng
chung đó khai thác được các tri thức có lợi cho mình, mà vẫn bảo đảm được tính
riêng tư của dữ liệu cho mỗi bên. Để thực hiện được mục tiêu chính, luận án cũng
có mục đích thứ hai là nghiên cứu và đề xuất các thuật toán, giao thức tránh thông
đồng giữa một số bên để làm lộ dữ liệu của các bên khác. Mặt khác, do cơ sở dữ
liệu phân tán khi được tái thiết thành cơ sở dữ liệu chung thường sinh ra cơ sở dữ
liệu có khối lượng rất lớn (do kết quả của phép kết đối với CSDL phân tán dọc và
phép hội đối với CSDL phân tán ngang) nên sẽ ảnh hưởng nhiều đến thời gian khai
thác. Luận án cũng có mục đích thứ ba là nghiên cứu và đề xuất một số thuật toán
nhằm hạn chế việc thực hiện phép kết dữ liệu từ các bên để từ đó giảm thời gian cho
việc khai thác dữ liệu.
3. Bố cục của luận án
Luận án gồm ba chương, phần mở đầu và phần kết luận, trong đó:
Phần mở đầu
Trình bày một số vần đề dẫn đến việc chọn hướng nghiên cứu của luận án, các
nghiên cứu liên quan đến hướng nghiên cứu của luận án của các tác giả trong và
ngoài nước, từ đó nêu lên mục đích chính của luận án và các phương pháp nghiên
cứu của luận án. Bố cục của luận án cũng được nêu rõ trong phần này.
Chương 1: Một số khái niệm về CSDL phân tán, khai thác dữ liệu và bảo đảm
tính riêng tư
Trong chương này, luận án trình bày một số khái niệm cơ bản về cơ sở dữ liệu
phân tán bao gồm cả phân tán dọc và phân tán ngang, các lý thuyết về các thuật toán
17
khai thác dữ liệu được sử dụng nhiều nhất. Trong đó tập trung vào khai thác tập phổ
biến, tập mục có lợi ích cao và luật kết hợp.
Trình bày các nghiên cứu về một số phương pháp và thuật toán ẩn dữ liệu
trong quá trình khai thác CSDL có quan tâm đến bảo đảm tính riêng tư của các bên
tham gia khai thác.
Chương 2: Khai thác dữ liệu trên CSDL phân tán
Trình bày các nghiên cứu và đề xuất của luận án về cải tiến các thuật toán khai
thác dữ liệu trên CSDL phân tán, các thuật toán này nhằm tăng nhanh thời gian khai
thác các tập mục lợi ích cao, tập phổ biến bằng phương pháp IT-Tree và khai thác
song song trên cơ sở dữ liệu phân tán.
Chương 3: Khai thác CSDL phân tán bảo đảm tính riêng tư
Trình bày các thuật toán và giải thuật đề xuất nhằm khai thác dữ liệu trên
CSDL phân tán dọc và phân tán ngang có quan tâm đến bảo đảm tính riêng tư cho
dữ liệu của các bên tham gia trong quá trình khai thác. Đối với mỗi thuật toán, luận
án cũng đánh giá về khả năng bảo toàn tính riêng tư, độ phức tạp và phần thực
nghiệm của thuật toán.
Phần kết luận
Trình bày tổng quát các kết quả đạt được của luận án trong đó nêu rõ những
đóng góp chính của luận án, các khó khăn và cũng đề xuất hướng phát triển, nghiên
cứu và thực hiện tiếp theo trong thời gian tới.
18
CHƯƠNG 1
Một số khái niệm về cơ sở dữ liệu phân tán, khai thác dữ
liệu và bảo toàn tính riêng tư
1.1. Cơ sở dữ liệu phân tán
1.1.1. Khái niệm cơ sở dữ liệu phân tán
Cơ sở dữ liệu phân tán là tập hợp các cơ sở dữ liệu được liên kết logic trên
mạng máy tính và làm việc một cách trong suốt đối với người sử dụng [3].
Khái niệm “trong suốt đối với người sử dụng” hàm nghĩa người sử dụng có thể
truy cập tất cả các cơ sở dữ liệu như là chúng thuộc về một cơ sở dữ liệu duy nhất.
1.1.2. Cơ sở dữ liệu phân tán ngang
Phân tán ngang là chia một quan hệ R theo các bộ, vì vậy mỗi mảnh là một tập
con các bộ t của quan hệ R [3]. Có hai phương pháp phân tán ngang gồm:
Phân tán ngang nguyên thuỷ (primary horizontal fragmentation) của một quan
hệ được thực hiện dựa trên các vị từ được định nghĩa trên quan hệ đó.
Phân tán ngang dẫn xuất (derived horizontal fragmentation ) là phân mảnh một
quan hệ dựa vào các vị từ được định trên một quan hệ khác
Ví dụ 1.1
MDA
TênDA
Ngân sách
Địa điểm
P1
Thiết bị đo đạc
150000
Nha Trang
P2
Phát triển dữ liệu
135000
TP.HCM
P3
CAD/CAM
250000
TP.HCM
P4
Bảo dưỡng
310000
Phan Thiết
Bảng 1.1 Quan hệ Dự Án (DA)
Chúng ta có thể định nghĩa các mảnh ngang dựa vào vị trí dự án. Khi đó các vị
từ và các mảnh thu được, được trình bày như sau:
DA1=σĐịa điểm=”Nha Trang” (DA)
19
DA2=σĐịa điểm=”TP.HCM” (DA)
DA3=σĐịa điểm=”PhanThiết” (DA)
DA1
MDA
Tên DA
Ngân sách
Địa điểm
Thiết bị đo đạc
150000
Nha Trang
Tên DA
Ngân sách
Địa điểm
P2
Phát triển dữ liệu
135000
TP.HCM
P3
CAD/CAM
250000
TP.HCM
Tên DA
Ngân sách
Địa điểm
thiết bị đo đạc
310000
Phan Thiết
P1
DA2
MDA
DA3
MDA
P4
Bảng 1.2 Kết qủa phân tán ngang nguyên thủy
Ví dụ 1.2
MNV
TênNV
Chức vụ
E1
Minh
Kỹ sƣ điện
E2
Hoàng
Phân tích hệ thống
E3
Thái
Kỹ sƣ cơ khí Lập
E4
Cƣờng
trình viên Phân
E5
Lan
tích hệ thống Kỹ
E6
Hùng
sƣ điện
E7
Huy
Kỹ sƣ cơ khí
E8
Hoa
Phân tích hệ thống
chức vụ
Lương
Kỹ sư điện
40000
Phân tích hệ thống
34000
Kỹ sư cơ khí
27000
Lập trình viên
24000
Bảng 1.3 Quan hệ chi trả (CT)
Bảng 1.4 Quan hệ nhân viên (NV)
Chúng ta có thể nhóm các kỹ sư thành hai nhóm tùy theo lương: nhóm có lương
từ 30000 đôla trở lên và nhóm có lương dưới 30000 đô la. Hai mảnh
Nhânviên1( NV1)và Nhânviên2(NV2) được định nghĩa như sau:
NV1=NV
CT1
NV2=NV
CT2
20
Trong đó
CT1=Lương30000( CT)
CT2=Lương>30000( CT)
MNV
TênNV
Chức vụ
MNV TênNV
E3
Thái
Kỹ sư cơ khí
E1
Minh
Kỹ sƣ điện
E4
Cường
Lập trình viên
E2
Hoàng
Phân tích hệ thống
E7
Huy
Kỹ sư cơ khí
E5
Lan
Phân tích hệ thống
E6
Hùng
Kỹ sƣ điện
E8
Hoa
Phân tích hệ thống
Chức vụ
Bảng 1.5 Kết quả phân mảnh ngang dẫn xuất của quan hệ NV
1.1.3. Cơ sở dữ liệu phân tán dọc
Một phân tán dọc cho một quan hệ R sinh ra các mảnh R1, R2,..,Rr, mỗi mảnh
chứa một tập con thuộc tính của R và cả khoá của R. Mục đích của phân mảnh dọc
là phân hoạch một quan hệ thành một tập các quan hệ nhỏ hơn để nhiều ứng dụng
chỉ cần chạy trên một mảnh. Một phân mảnh “tối ưu” là phân mảnh sinh ra một
lược đồ phân mảnh cho phép giảm tối đa thời gian thực thi các ứng dụng chạy trên
mảnh đó [3].
Ví dụ 1.3 (minh họa CSDL phân tán dọc)
MNV
Tên nv
Năm sinh
Mưc lương
Thuế
MPB
E1
Minh
1981
25000
2000
D1
E2
Hoàng
1982
27000
1800
D1
E3
Thái
1975
21000
1800
D2
E4
Cường
1962
30000
2300
D2
E5
Lan
1977
20000
2500
D2
E6
Hùng
1978
27000
1500
D3
E7
Huy
Hoa
28000
21000
2400
2000
D3
E8
1980
1981
Bảng1.6 Quan hệ Nhân Viên (NV)
D3
Giả sử, theo yêu cầu côngviệc, bộ phận tài vụ chỉ quan tâm đến các dữ liệu về
lương và thuế của nhân viên (NV1) trong khi bộ phận tổ chức cần các thông tin còn
lại (NV2) vậy quan hệ NV được phân tán dọc như sau :
NV1= ∏(mnv,Mức lương, Thuế) (NV)
NV2= ∏(mnv,Tên nv, Năm sinh, mpb) (NV)
Kết quả của việc phân mảnh dọc thể hiện ở bảng 1.7
MNV
Tên nv
Năm
sinh
MPB
MNV
Mƣc lƣơng
Thuế
E1
Minh
1981
D1
E1
25000
2000
E2
Hoàng
1982
D1
E2
27000
1800
E3
Thái
1975
D2
E3
21000
1800
E4
Cường
1962
D2
E4
30000
2300
E5
Lan
1977
D2
E5
20000
2500
E6
Hùng
1978
D3
E6
27000
1500
E7
E8
Huy
Hoa
1980
1981
D3
E7
E8
28000
21000
2400
2000
D3
NV2
NV1
Bảng 1.7 Kết quả phân tán dọc từ bảng 1.6
Khi phân tán theo chiều ngang hay chiều dọc chúng ta đều phải tuân thủ đầy
đủ ba quy tắc trong khi phân tán để chúng bảo đảm rằng cơ sở dữ liệu sẽ không có
thay đổi nào về ngữ nghĩa khi phân tán [3]:
1.1.3.1. Tính đầy đủ
Nếu một thể hiện quan hệ R được phân rã thành các mảnh R1, R2,…,Rn, thì
mỗi mục dữ liệu có thể gặp trong R cũng có thể gặp một trong nhiều mảnh Ri. Đặc
tính này giống như tính chất phân rã nối không mất thông tin trong chuẩn hoá, cũng
quan trọng trong phân mảnh bởi vì nó bảo đảm rằng dữ liệu trong quan hệ R được
ánh xạ vào các mảnh và không bị mất. Chú ý rằng trong trường hợp phân mảnh
ngang “mục dữ liệu” muốn nói đến là một bộ, còn trong trường hợp phân tán dọc,
nó muốn nói đến một thuộc tính.
1.1.3.2. Tính tái thiết được
Nếu một thể hiện quan hệ R được phân rã thành các mảnh R1, R2,…,Rn, thì
cần phải định nghĩa một toán tử quan hệ sao choR=Ri, Ri Fr. Toán tử thay
đổi tùy theo từng loại phân mảnh, tuy nhiên điều quan trọng là phải xác định được
nó. Khả năng tái thiết một quan hệ từ các mảnh của nó bảo đảm rằng các ràng buộc
được định nghĩa trên dữ liệu dưới dạng các phụ thuộc sẽ được bảo toàn.
1.1.3.3. Tính tách biệt
Nếu quan hệ R được phân rã ngang thành các mảnh R1, R2,…,Rn, và mục dữ
liệu di nằm trong mảnh Rj, thì nó sẽ không nằm trong mảnh Rk khác (k≠j). Tiêu
chuẩn này đảm bảo các mảnh ngang sẽ tách biệt (rời nhau). Nếu quan hệ được phân
mảnh dọc, các thuộc tính khoá chính phải được lặp lại trong mỗi mảnh. Vì thế trong
trường hợp phân mảnh dọc, tính tách biệt chỉ được định nghĩa trên các trường
không phải là khoá chính của một quan hệ.
1.2. Khai thác dữ liệu
1.2.1. Khái niệm khai thác dữ liệu
Khai thác dữ liệu là tiến trình khám phá tri thức tiềm ẩn trong các CSDL. Đó là
tiến trình trích lọc, sản sinh những tri thức hoặc các mẫu tiềm ẩn, chưa biết nhưng
hữu ích từ các nguồn CSDL khác nhau. Nói cách khác, khai thác dữ liệu là tiến
trình khái quát các sự kiện rời rạc trong dữ liệu thành các tri thức mang tính khái
quát, tính quy luật nhằm hỗ trợ tích cực cho tiến trình ra quyết định.
Có thể chia khai thác dữ liệu thành hai dạng chính là: khai thác dữ liệu theo
hướng kiểm tra và khai thác dữ liệu theo hướng khám phá. khi khai thác dữ liệu
theo hướng kiểm tra, người dùng đề xuất giả thiết, hệ thống kiểm tra tính đúng đắn
của giả thiết. Khai thác dữ liệu theo hướng kiểm tra bao gồm: truy vấn, báo cáo,
phân tích đa chiều, phân tích thống kê,... Ngược lại, khai thác dữ liệu theo hướng
khám phá sẽ tìm kiếm các tri thức tiềm ẩn trong CSDL bằng cách xem xét tất cả các
giả thiết khả dĩ. Tri thức rút ra có thể dùng để : Giải thích dữ liệu, dự báo (khuynh
hướng mua hàng của khách hàng, định hướng tập trung nguồn lực của doanh nghiệp,
xác định rủi ro của một đối tượng bảo hiểm,...).