26
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 HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ ----------------------------- VŨ QUỐC TUẤN PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ sở Toán học cho Tin học Mã số: 9 46 01 10 TÓM TẮT LUẬN ÁN TIẾN SĨ TOÁN HỌC Hà Nội - 2019

PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

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

HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ

-----------------------------

VŨ QUỐC TUẤN

PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC

HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU

Chuyên ngành: Cơ sở Toán học cho Tin học

Mã số: 9 46 01 10

TÓM TẮT LUẬN ÁN TIẾN SĨ TOÁN HỌC

Hà Nội - 2019

Page 2: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

Công trình được hoàn thành tại:

Học viện Khoa học và Công nghệ - Viện Hàn lâm Khoa học và

Công nghệ Việt Nam

Người hướng dẫn khoa học 1: PGS. TS. Hồ Thuần

Người hướng dẫn khoa học 2: PGS. TS. Nguyễn Thanh Tùng

Phản biện 1: …

Phản biện 2: …

Phản biện 3: ….

Luận án sẽ được bảo vệ trước Hội đồng đánh giá luận án tiến sĩ cấp

Học viện, họp tại Học viện Khoa học và Công nghệ - Viện Hàn lâm

Khoa học và Công nghệ Việt Nam vào hồi … giờ ..’, ngày … tháng

… năm 201….

Có thể tìm hiểu luận án tại:

- Thư viện Học viện Khoa học và Công nghệ

- Thư viện Quốc gia Việt Nam

Page 3: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

1

MỞ ĐẦU

Các phụ thuộc dữ liệu có vai trò quan trọng trong thiết kế cơ sở

dữ liệu, quản lý chất lượng dữ liệu và biểu diễn tri thức. Các phụ

thuộc trong phát hiện tri thức được trích xuất từ dữ liệu hiện có của

cơ sở dữ liệu. Quá trình trích xuất này được gọi là phát hiện phụ

thuộc.

Mục đích của việc phát hiện phụ thuộc là tìm các phụ thuộc quan

trọng đúng (thỏa mãn) trên dữ liệu của cơ sở dữ liệu. Các phụ thuộc

(được phát hiện) biểu diễn tri thức và có thể được dùng để kiểm tra

thiết kế cơ sở dữ liệu, đánh giá chất lượng dữ liệu.

Từ những năm đầu thập kỷ 80 của thế kỷ 20, bài toán phát hiện

phụ thuộc đã thu hút được đông đảo các nhà khoa học. Và cho đến

thời điểm hiện tại, vấn đề phát hiện phụ thuộc từ các tập dữ liệu lớn

(big data) càng trở nên quan trọng vì trong các tập dữ liệu lớn này

chứa rất nhiều tri thức quý giá.

Hiện nay, với sự phát triển của các thiết bị số, đặc biệt là các ứng

dụng mạng xã hội và điện thoại thông minh, lượng dữ liệu trong các

ứng dụng tăng rất nhanh làm nảy sinh vấn đề lưu trữ, quản lý, đặc

biệt là vấn đề phát hiện tri thức từ các tập dữ liệu lớn đó. Bài toán

phát hiện FD và RFD trong cơ sở dữ liệu là một trong những vấn đề

quan trọng của phát hiện tri thức. Ba loại phụ thuộc điển hình được

chú ý phát hiện là FD, AFD và CFD. AFD là sự mở rộng của FD,

tính chất "xấp xỉ" dựa trên độ thỏa hoặc độ đo lỗi; CFD là sự mở

rộng của FD, nhằm nắm bắt những yếu tố không nhất quán trong dữ

liệu.

Các hướng nghiên cứu giải quyết bài toán phát hiện RFD trong cơ

sở dữ liệu, trước hết tập trung vào phát hiện FD do FD là trường hợp

riêng của tất cả các loại RFD, các kết quả về phát hiện FD có thể

Page 4: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

2

được thích nghi để phát hiện các loại phụ thuộc khác (chẳng hạn

AFD). Mô hình chung của bài toán phát hiện FD là xây dựng không

gian tìm kiếm các FD, kiểm tra sự thỏa mãn của từng FD, tỉa không

gian tìm kiếm, xuất ra tập FD đã phát hiện được và làm gọn tập FD

này (giảm bớt sự dư thừa). Trong bài toán phát hiện FD, phát hiện

khóa là trường hợp đặc biệt và cũng là bài toán quan trọng trong

chuẩn hóa cơ sở dữ liệu quan hệ.

Độ phức tạp thời gian tổng quát của bài toán phát hiện FD là đa

thức theo số bản ghi trong cơ sở dữ liệu nhưng là hàm mũ theo số

thuộc tính của cơ sở dữ liệu đó. Do đó, để giảm thời gian xử lý, cần

xây dựng các luật tỉa hiệu quả. Trong số các luật tỉa đã được đề xuất,

tỉa khóa là rất quan trọng, khi phát hiện được khóa thì có thể tỉa (xóa)

mọi nút chứa khóa trong không gian tìm kiếm. Tuy nhiên, các luật tỉa

khóa hiện có vẫn còn nhược điểm là tìm khóa trên toàn bộ tập thuộc

tính của cơ sở dữ liệu (đây thực sự là vấn đề rất khó vì độ phức tạp

thời gian có thể là hàm mũ theo số thuộc tính của ), vậy có cách

nào phát hiện được khóa trong một tập con thực sự của hay

không? Câu hỏi trên chính là một trong những động lực cơ bản của

luận án này.

Sau khi đã phát hiện được tập các phụ thuộc, tập này có thể rất

lớn và gây khó khăn cho việc sử dụng vì chứa những dư thừa không

cần thiết. Vấn đề quan trọng đặt ra là làm thế nào để loại bỏ được

(càng nhiều càng tốt) sự dư thừa trong tập phụ thuộc đã được phát

hiện. Đây cũng là bài toán được quan tâm trong luận án.

Một hướng nghiên cứu nữa trong luận án là tập trung nghiên cứu,

phát hiện hai loại RFD điển hình, đó là AFD và CFD. Cả AFD và

CFD đều có nhiều ứng dụng và xuất hiện nhiều trong các cơ sở dữ

liệu quan hệ, đặc biệt CFD còn là công cụ mạnh khi giải quyết bài

Page 5: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

3

toán làm sạch dữ liệu. Với AFD, vấn đề quan trọng nhất là cải tiến và

phát triển các kỹ thuật tính toán các độ thỏa hoặc độ đo lỗi; với CFD,

ngoài việc phát hiện, thì việc tìm hiểu về một thứ tự phân cấp giữa

CFD và một số loại phụ thuộc khác cũng là vấn đề rất đáng quan

tâm.

Nội dung nghiên cứu trong luận án là những vấn đề thời sự, được

xới lại, làm mới với hàng loạt các công trình của các tác giả nước

ngoài; trong khi ở trong nước, có nhiều công trình được công bố liên

quan tới các phương pháp và thuật toán xác định các tập rút gọn

(reduct) của một bảng quyết định theo nhiều tiếp cận khác nhau.

Mục tiêu của luận án là nghiên cứu một số vấn đề như đã phân

tích ở trên trong phạm vi cơ sở dữ liệu quan hệ. Để thực hiện các

mục tiêu trên, chúng tôi tập trung vào các nội dung sau:

Chương 1. Trình bày tổng quan về mô hình dữ liệu quan hệ, các

khái niệm FD, bao đóng của một tập thuộc tính, khóa của lược đồ

quan hệ,…Đồng thời tập trung trình bày về RFD và khát quát các

phương pháp đã được sử dụng để phát hiện FD và RFD.

Chương 2. Trình bày về AFD và CFD (hai loại FD suy rộng điển

hình) và một số kết quả liên quan.

Chương 3. Trình bày các thuật toán tính bao đóng của một tập

thuộc tính đối với một tập FD, vấn đề rút gọn cho bài toán xác định

khóa của lược đồ quan hệ và một số kết quả liên quan.

Chương 4. Trình bày một phép biến đổi tiền xử lý hiệu quả các

tập FD (nhằm hạn chế sự dư thừa trong một tập FD cho trước) và

một số kết quả liên quan.

Page 6: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

4

Chương 1

PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG

TRONG MÔ HÌNH DỮ LIỆU QUAN HỆ

1.1. Nhắc lại một số khái niệm cơ bản

Một quan hệ r trên tập thuộc tính Ω = A1, A2,…,An

r (a1, a2,…,an) | ai Dom(Ai), i = 1, 2,…, n

trong đó Dom(Ai) là miền trị của thuộc tính Ai, i = 1, 2,…, n.

Một lược đồ quan hệ S là một cặp có thứ tự S = <Ω, F>, trong đó

Ω là tập hữu hạn các thuộc tính, F là tập các FD.

1.2. Phụ thuộc hàm

Phụ thuộc hàm. Giả sử X, Y . Khi đó X Y nếu với mọi quan

hệ r trên lược đồ S(), t1, t2 r mà t1[X] = t2[X] thì t1[Y] = t2[Y].

Hệ quy tắc suy diễn Armstrong. Với mọi X, Y, Z , ta có

Q1. (Phản xạ): Nếu Y X thì X Y.

Q2. (Gia tăng): Nếu X Y thì XZ YZ.

Q3. (Bắc cầu): Nếu X Y và Y Z thì X Z.

Bao đóng của X đối với tập FD F, là tập FX với:

FX = A (X A) F+

Khóa của lược đồ quan hệ. Cho S = <, F> và K . Ta nói K

là một khóa của S nếu hai điều kiện sau đồng thời được thỏa mãn:

(i). (K ) F+

(ii). Nếu K' K thì (K' ) F+

Nếu K thỏa mãn (i) thì K được gọi là một siêu khóa.

1.3. Phụ thuộc hàm suy rộng (RFD)

1.3.1. Phụ thuộc hàm xấp xỉ (AFD)

AFD là các FD được thỏa mãn với phần lớn các bộ trong quan hệ.

Để xác định mức độ vi phạm của X Y trên quan hệ r, một độ đo lỗi

Page 7: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

5

nào đó, ký hiệu là ( , )e X Y r , sẽ được sử dụng. Cho trước một

ngưỡng lỗi , 0 1. Ta nói X Y là AFD nếu và chỉ nếu

( , )e X Y r .

1.3.2. Phụ thuộc hàm mêtric (MFD)

Xét X Y trên quan hệ r. Một MFD là sự mở rộng của FD bằng

cách thay thế điều kiện t1[Y] = t2[Y] bằng d(t1[Y], t2[Y]) ≤ , trong đó

d là một mêtric trên Y, d: dom(Y) dom(Y) R và 0 là một tham

số.

1.3.3. Phụ thuộc hàm điều kiện (CFD)

Một CFD có dạng = (X Y, Tp), trong đó X Y là một FD và

Tp là một bảng mẫu với các thuộc tính trong XY. Bảng mẫu xác định

các bộ của quan hệ thỏa X Y. Một cách trực quan, bảng mẫu Tp

của làm mịn X Y được nhúng trong bằng việc áp đặt mối liên

kết của các giá trị dữ liệu có liên quan về mặt ngữ nghĩa.

1.3.4. Phụ thuộc hàm mờ (FFD)

Cho r là một quan hệ trên Ω = A1, A2,…,An và X, Y . Với Ai

Ω, mức độ bằng nhau của các giá trị dữ liệu trong Dom(Ai) được

xác định bởi quan hệ (hàm) Ri.

Cho trước tham số (0 ≤ ≤ 1), ta nói hai bộ t1[X] và t2[X] bằng

nhau với mức , kí hiệu t1[X] E() t2[X], nếu Rk(t1[Ak], t2[Ak])

với mọi Ak X. Khi đó, X Y được gọi là FFD mức nếu t1, t2

r, t1[X] E() t2[X] t1[Y] E() t2[Y].

1.3.5. Phụ thuộc sai phân (DD)

DD mở rộng quan hệ bằng nhau trong FD X Y trên quan hệ r.

Điều kiện t1, t2 bằng nhau trên X và bằng nhau trên Y tương ứng được

thay thế bằng điều kiện hai bộ này thỏa mãn hàm L và hàm R. Thực

chất, các hàm sai phân sử dụng khoảng cách mêtric để mở rộng các

quan hệ bằng nhau được sử dụng trong FD.

Page 8: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

6

FD là trường hợp đặc biệt của DD khi L[t1[X], t2[X]) = 0 và

R[t1[Y], t2[Y]) = 0. Ngoài ra, DD còn là sự mở rộng của MFD khi

L[t1[X], t2[X]) = 0 và R[t1[Y], t2[Y]) ≤ .

1.3.6. Các loại RFD khác

Còn có nhiều loại RFD khác nữa. Xuất phát từ các ứng dụng thực

tế, mỗi loại RFD là kết quả của sự mở rộng (nới lỏng) quan hệ bằng

nhau trong khái niệm FD truyền thống theo một cách thức hay một

nghĩa nào đó.

1.4. Phát hiện FD

Phương pháp top-down. Phương pháp này sinh các FD ứng viên

dựa trên một dàn thuộc tính, kiểm tra sự thỏa mãn của các FD ứng

viên và sau đó sử dụng các FD đã được phát hiện là đúng để tỉa các

FD ứng viên ở các mức thấp hơn trong dàn nhằm thu hẹp không gian

tìm kiếm. Một vấn đề quan trọng là làm thế nào để kiểm tra một FD

ứng viên có được thỏa mãn hay không. Một số phương pháp tính

toán đã được sử dụng là phương pháp phân hoạch và phương pháp

tập tự do. Hai thuật toán nổi tiếng sử dụng phương pháp phân hoạch

là TANE và FD_Mine. Thuật toán cài đặt phương pháp tập tự do là

FUN.

Phương pháp bottom-up. Khác với phương pháp top-down ở trên,

phương pháp bottom-up so sánh các bộ của quan hệ để tính các tập

bằng nhau hoặc các tập khác nhau. Các tập này sau đó được sử dụng

để có được các FD đúng trên quan hệ đang xét. Đặc trưng của kỹ

thuật bottom-up là chúng kiểm tra các FD ứng viên dựa trên các tập

bằng nhau hoặc khác nhau đã được tính. Hai thuật toán điển hình sử

dụng phương pháp này là Dep-Miner và FastFDs.

Độ phức tạp trong trường hợp xấu nhất của bài toán phát hiện FD

là hàm mũ theo số thuộc tính của .

Page 9: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

7

Có một số chủ đề liên quan đến phát hiện FD như lấy mẫu, duy trì

các FD đã được phát hiện, phát hiện khóa, ...

1.5. Phát hiện RFD

1.5.1. Phát hiện AFD

Để kiểm tra các AFD, các phương pháp phát hiện FD có thể được

thích nghi để phát hiện các AFD bằng cách bổ sung vào phần tính

toán độ thỏa hoặc độ đo lỗi.

1.5.2. Phát hiện CFD

Những khó khăn xuất hiện khi phát hiện các CFD đến từ hai khía

cạnh. Số lượng các FD nhúng cần kiểm tra có thể có là hàm mũ theo

số thuộc tính. Mặt khác, bài toán phát hiện bảng mẫu tối ưu là NP-C.

Ba thuật toán điển hình để phát hiện CFD là CFDMiner, CTANE

và FastCFD.

1.6. Tổng kết chương 1

Chương này đã trình bày khái quát về FD và RFD trong mô hình

dữ liệu quan hệ. Bài toán phát hiện phụ thuộc dữ liệu có không gian

tìm kiếm là hàm mũ theo số thuộc tính.

Các phương pháp phát hiện FD có thể được thích nghi để phát

hiện các RFD. Chẳng hạn, có thể bổ sung phần tính độ đo lỗi hoặc độ

thỏa vào thuật toán phát hiện FD để phát hiện các AFD.

Đã có một số thuật toán được đề xuất để giải quyết bài toán phát

hiện FD và RFD.

Page 10: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

8

Chương 2.

PHỤ THUỘC HÀM XẤP XỈ

VÀ PHỤ THUỘC HÀM ĐIỀU KIỆN

2.1. Về một số kết quả liên quan đến FD và AFD

Phần này chỉ rõ mối quan hệ giữa các kết quả của hai bài báo

thuộc hai nhóm tác giả ([Y. Huhtala et al., 1999] và [S. King et al.,

2003]) và chứng minh một số bổ đề quan trọng, là nền tảng để phát

hiện FD và AFD (chưa được chứng minh).

2.1.1. Phân hoạch

Với t r và X , ký hiệu:

[t]X = u r | t[X] = u[X]và X = [t]X | t r

Tích của hai phân hoạch X và Y, ký hiệu X Y. Số lớp tương

đương của phân hoạch X được ký hiệu là |X |.

2.1.2. Một số kết quả

Các định lý dưới đây của [S.King et al., 2003]) thực chất chính là

một số bổ đề của [Y. Huhtala et al., 1999], các bổ đề này đã được

chứng minh chi tiết trong luận án.

Định lý 2.1. FD X A thoả mãn nếu và chỉ nếu X mịn hơn A.

Định lý 2.2. FD X A thoả mãn nếu và chỉ nếu |X| = |XA|.

Định lý 2.3. FD X A thỏa mãn nếu và chỉ nếu g3(X) = g3(X A).

Định lý 2.4. Ta có X Y = X Y

Định lý 2.5. Giả sử B X và X - B B. Khi đó, nếu X A thì X -

B A. Nếu X là một siêu khoá thì X - B cũng là một siêu khoá.

Định lý 2.6. C+(X) = A R | B X, X - A, B B không thoả

mãn.

Định lý 2.7. Giả sử A X và X - A A. FD X - A A tối tiểu

nếu và chỉ nếu với mọi B X, ta có A C+(X - B).

Page 11: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

9

2.2. Phát hiện FD và AFD

Một số độ đo xấp xỉ đã được đề xuất và thường xuyên được sử

dụng khi phát hiện AFD là TRUTHr(X Y), g1(X Y, r), g2(X Y,

r) và g3(X Y, r). Việc lựa chọn các độ đo khác nhau có ảnh hưởng

đến kết quả phát hiện các phụ thuộc. Luận án đã chỉ ra được các

quan hệ mới giữa các độ đo như sau:

TRUTHr(X Y) = 1 - 1 ,1

rg X Y r

r

2 1, . ,2

rg X Y r g X Y r

2 3( )

( , ) ( , ) max | ' |: ' ( ), ' / | |X

Yc r

g X Y r g X Y r c c c c c r

Cho quan hệ r trên lược đồ S(). Với mỗi X , ta xây dựng

một quan hệ tương đương X như sau:

t X u khi và chỉ khi t[X] = u[X] với mọi t, u r

Giả sử mr t t t 1 2, ,..., . Mỗi quan hệ X trên r có thể được biểu

diễn dưới dạng một ma trận (gọi là ma trận tương đương) với

ija 1nếu ti X tj và 0ija nếu ngược lại.

X t1 t2 ... tj ... tm

t1 a11 a12 ... a1j ... a1m

t2 a21 a22 ... a2j ... a2m

... ... ... ... ... ... ...

ti ai1 ai2 ... aij ... aim

... ... ... ... ... .. ...

tm am1 am2 ... amj ... amm

Sử dụng ma trận tương đương (ma trận thuộc tính), trong luận án

đã xây dựng được các thuật toán (có độ phức tạp thời gian O(m2)) để

Page 12: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

10

phát hiện FD (kiểm tra tính đúng của FD) và AFD (tính các độ đo

TRUTHr(X Y), g1(X Y, r), g2(X Y, r)).

2.3. Phụ thuộc hàm điều kiện (CFD)

Định nghĩa. Một CFD xác định trên lược đồ quan hệ R là một

cặp = (X Y, Tp), trong đó X Y là một FD (được gọi là FD

nhúng trong ) và Tp là một bảng mẫu với các thuộc tính trong X

Y. Bảng mẫu Tp chứa các bộ mẫu, mỗi bộ mẫu tp Tp chứa các giá trị

hằng và biến không tên "". Biến không tên "" lấy giá trị trong

miền thuộc tính tương ứng.

Ngữ nghĩa của CFD. Bảng mẫu Tp trong CFD = (X Y, Tp)

xác định các bộ của quan hệ phải thỏa FD X Y. Một cách trực

quan, bảng mẫu Tp của làm mịn FD X Y được nhúng trong

bằng việc áp đặt mối liên kết của các giá trị dữ liệu có liên quan về

mặt ngữ nghĩa.

Bài toán quyết định xem một tập CFD cho trước có nhất quán hay

không là NP-đầy đủ. Đã có hệ quy tắc suy diễn xác đáng và đầy đủ

đối với CFD. Đã có các thuật toán phát hiện CFD là CFDMiner,

CTANE và FastCFD.

2.4. Về một thứ tự phân cấp giữa các FD, CFD và AR

Công trình của [R.Medina et al., 2009] là một công trình hay và

độc đáo. Các tác giả đã chỉ ra một thứ tự phân cấp giữa các FD, CFD

và AR: FD là hợp của các CFD trong khi CFD là hợp của các AR.

Thứ tự phân cấp giữa các FD, CFD và AR mang lại nhiều lợi ích: các

thuật toán hiện có để phát hiện AR có thể được thích nghi để phát

hiện nhiều loại phụ thuộc dữ liệu khác và hơn nữa còn sinh một tập

được rút gọn các phụ thuộc.

Dưới đây là một số nhận xét và kết quả bước đầu sau khi nghiên

cứu công trình của [R.Medina et al., 2009]:

Page 13: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

11

Nhận xét 2.1. Khác với hầu hết các tác giả nghiên cứu về CFD,

[R.Medina et al., 2009] đã mở rộng các bộ mẫu tp, xác định trên toàn

bộ Attr(R), trong đó tp[A] = với A X Y.

Nhận xét 2.2. Thay cho đối sánh một bộ t r với một bộ mẫu tp

Tp (tp đã được mở rộng, xác định trên toàn bộ Attr(R)), ta đối sánh

t(X) với tp(X), t(Y) với tp(Y). Về thực chất t(X) và tp(X) (tương tự cho

t(Y) và tp(Y)) là sánh hợp nếu

A X: t(X)[A] = tp(X)[A] = a Dom(A)

hoặc t(X)[A] = a và tp(X)[A] =

Nhận xét 2.3. Xét định nghĩa một bộ mẫu tp xác định một quan hệ

con (mảnh ngang) của [R.Medina et al., 2009] như sau:

ptr = t r | tp t (*)

Biểu thức (*) rõ ràng là không chỉnh vì hầu hết các trường hợp đều

cho kết quả là tập rỗng. Thực vậy, trường hợp tp có chứa ít nhất một

thành phần là thì rõ ràng không tồn tại t r để cho tp t. Trường

hợp ngược lại, với giả thiết X Y Attr(R), ta có

tp[A] = và t[A] = a với A X Y.

Do đó cũng không thể tồn tại t r để cho tp t. Như vậy, ptr được

xác định bởi (*) cho kết quả khác rỗng khi X Y = Attr(R) và tp

trùng với một bộ nào đó của r. Do đó, biểu thức (*) phải được sửa lại

như sau:

ptr = t r | t(X Y) tp(X Y)

[R.Medina et al., 2009] đã sử dụng các định nghĩa sau:

Tính chất X-đầy đủ. Quan hệ r được gọi là X-đầy đủ nếu và chỉ

nếu t1, t2 r ta có t1[X] = t2[X].

Bộ mẫu X-đầy đủ: (X, r) = t r

Phân tách ngang X-đầy đủ: RX(r) = r' r | r' là X-đầy đủ

Page 14: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

12

Tập các bộ mẫu X-đầy đủ: (X, r) = (X, r') | r' RX(r)

Toán tử bao đóng:

(X, r) = A Attr(R) | tp (X, r), tp[A]

Nhận xét 2.4. Như vậy, cho r' là một quan hệ X-đầy đủ và r' r. có

thể tính (X, r') theo công thức (X, r') = t r'.

Xét định nghĩa toán tử trên hai bộ t1, t2 r của [R.Medina et al.,

2009]: nếu chỉ dựa vào quan hệ thứ tự a với a là một giá trị

hằng bất kỳ, sẽ khiến cho việc tính t1 t2 gặp khó khăn. Về thực

chất, ta chỉ cần so sánh các thành phần tương ứng của hai bộ t1 và t2

để biết chúng bằng nhau hay khác nhau. Do đó, thay cho phép toán

, ta sẽ dùng phép toán đơn giản hơn:

Với t1, t2 r,

t1 t2 = t sao cho A Attr(R), 1 1 2

1 2

[ ] [ ] [ ] [ ]

[ ] [ ] [ ]

nÕu t

nÕu t

t A t A A t A

t A A t A

Khi xem xét quan hệ giữa (X, r) và FX , chúng tôi có mệnh đề

dưới đây. Mệnh đề này đã được chứng minh chi tiết trong luận án.

Mệnh đề. Cho r là một thể hiện của lược đồ R xác đinh trên tập

thuộc tính Attr(R), X Attr(R), và r thỏa một tập phụ thuộc hàm F.

Khi đó: (X, r) = A Attr(R) | tp (X, r), tp[A]

= FX = A Attr(R) | (X A) F+

2.5. Kết luận chương 2 Chương này trình bày về một số kết quả liên quan đến FD và

AFD, phương pháp ma trận để phát hiện FD và CFD và một số kết

quả bước đầu liên quan đến thứ tự phân cấp giữa FD, CFD và AR.

FD, AFD và CFD là ba loại phụ thuộc dữ liệu quan trọng. Nghiên cứu và tiếp tục giải quyết các bài toán liên quan đến ba loại phụ thuộc này là một hướng mới và rất đáng quan tâm.

Các kết quả chính trong chương này được công bố trong [CT1, CT2, CT8, CT9].

Page 15: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

13

Chương 3.

THUẬT TOÁN TÍNH BAO ĐÓNG VÀ VẤN ĐỀ RÚT GỌN

BÀI TOÁN TÌM KHÓA CỦA LƯỢC ĐỒ QUAN HỆ

3.1. Thuật toán tính bao đóng

3.1.1. Khái niệm bao đóng

Cho tập FD F xác định trên và X . Ta có:

FX = A (X A) F+

Để đơn giản, khi tập F đã được chỉ rõ, kí hiệu X+ thay cho FX .

3.1.2. Một số thuật toán tính bao đóng

Phần này đề cập đến một số thuật toán tính bao đóng. Tập trung

nghiên cứu thuật toán tính bao đóng của Mora và cộng sự và cải tiến

thuật toán này.

Kết quả thực nghiệm cho thấy thuật toán của Mora và cộng sự

hiệu quả hơn các thuật toán khác. Tuy nhiên, tính đúng đắn của thuật

toán này không được chứng minh. Hơn nữa, nhược điểm của nó là

mỗi lần duyệt tập F, tất cả các FD có vế trái và vế phải cùng chứa

trong Xnew vẫn được kiểm tra vế trái để từ đó tính giá trị mới của Xnew

(điều này làm mất thời gian không cần thiết vì giá trị Xnew thực chất

không thay đổi).

Thuật toán cải tiến tránh được những phép kiểm tra và tính toán

không cần thiết này vì thực hiện loại bỏ ngay từ đầu các FD có vế

phải chứa trong Xnew.

Luận án đã chứng minh tính đúng đắn của thuật toán của Mora và

cộng sự (và cả thuật toán cải tiến), đồng thời chỉ rõ thuật toán cải tiến

hiệu quả hơn.

Page 16: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

14

Thuật toán tính bao đóng của Mora và cộng sự Input: , F, X Output: X+ begin Xnew = X; repeat Xold = Xnew; for each Y Z F do if Y Xnew then Xnew = Xnew Z; (I) F = F - Y Z; elseif Z Xnew then F = F - Y Z; (II) else F = F - Y Z; (III) F = F Y-Xnew Z-Xnew; end if; end for each; until ((Xnew = Xold) or (|F| = 0)); return(Xnew); end;

Thuật toán tính bao đóng cải tiến Input: , F, X Output: X+ begin

Xnew = X; repeat

Xold = Xnew; for each Y Z F do if (Z Xnew) then F = F - Y Z (I)

else if (Y Xnew) then (II) Xnew = Xnew Z; F = F - Y Z else (III) F = F - Y Z ; F= F Y-XnewZ-Xnew; end if; end for each; until (Xnew = Xold) or (|F| = 0);

return(Xnew); end;

3.2. Vấn đề rút gọn bài toán xác định khóa của lược đồ quan hệ

3.2.1. Một số kết quả đã biết

Cho lược đồ quan hệ S = <, F>, trong đó = A1, A2,..., An

và F = L1 R1,..., Lm Rm | Li, Ri , i = 1,...,m. Kí hiệu:

1

m

ii

L L

, 1

m

ii

R R

, S = Kj | Kj là khóa của S,

j S

jK

G K

, j S

jK

H K

và H = \ H.

Định lý 3.1 (Hồ Thuần và Lê Văn Bào, 1985). Cho S = <, F> là

một lược đồ quan hệ. Khi đó:

- Nếu X là một khóa của S thì

\ R X ( \ R) (L R) (1)

- Ta có G = \ R và R \ L H

Page 17: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

15

Khái niệm lõi (core) và thân (body) đã được P. Cordero và cộng

sự đưa ra năm 2013: Cho S = <, F> là một lược đồ quan hệ. Khi

đó lõi và thân của S được định nghĩa như sau:

core(, F) = \ ( )i i

iL R F

R

body(, F) = ( )i i

iL R F

L

[ \ core(, F)+]

Bằng những tính toán đơn giản, ta nhận được:

core(, F) = \ R và body(, F) = L [ \ ( \ R)+]

Định lý 3.2 (Mora và cộng sự, 2011). Cho S = <, F> là một lược

đồ quan hệ và K là một khóa (tối tiểu) của S. Khi đó, ta có:

core K (core body),

có nghĩa \ R K ( \ R) [L [ \ ( \ R)+] ] (2)

Rõ ràng (2) là một điều kiện cần để K là khóa của S.

3.2.2. Một dạng cải tiến cho điều kiện cần (1)

Dựa trên (1) và ngữ nghĩa quen thuộc của FD trong mô hình quan

hệ, chúng tôi có định lý sau:

Định lý 3.3. Cho S = <, F> là một lược đồ quan hệ. Khi đó

\ R K ( \ R) [(L R) \ (R ( \ R)+ )], SK (3)

Rõ ràng (3) là một dạng cải tiến của (1).

3.2.3. So sánh các điều kiện cần

Định lý 3.4. Hai điều kiện (2) và (3) chỉ là một và được diễn đạt

bằng những biểu thức khác nhau.

Định lý 3.5 (Hồ Thuần và cộng sự, 1996). Cho S = <, F> là một

lược đồ quan hệ và K là một khóa của S. Khi đó:

( \ R) K ( \ R) [(L R) \ ( \ R)+] (4)

Định lý sau chỉ rõ mối quan hệ giữa (2) và (4).

Định lý 3.6. Điều kiện cần (2) thực sự là trùng với điều kiện cần (4).

Page 18: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

16

Các định lý 3.3, 3.4 và 3.6 đã được chứng minh chi tiết trong luận

án. Xét về trực quan, mục đích của bài toán xác định khóa là tìm tất

cả các khóa K của lược đồ S = <Ω, F> và ta luôn biết rằng mọi khóa

K đều chứa trong Ω. Nếu đi tìm các khóa trong tập vũ trụ Ω thì

không hiệu quả vì Ω là siêu khóa lớn nhất chứa tất cả các khóa. Do

đó, vấn đề đặt ra là cần tìm một siêu khóa Z (càng ít thuộc tính càng

tốt) chứa tất cả các khóa của S sao cho Z Ω. Nếu tìm được tập Z

như vậy thì việc tìm các khóa trong Z thay vì tìm trong Ω sẽ đơn giản

hơn. Các điều kiện cần (1), (2), (3) và (4) lần lượt được viết lại dưới

đây cho thấy cấu trúc chung của mọi khóa K của S, các cận bên phải

đều là các siêu khóa chứa mọi khóa của S.

\ R K ( \ R) (L R)

\ R K ( \ R) [L [ \ ( \ R)+] ]

\ R K ( \ R) [(L R) \ (R ( \ R)+ )]

\ R K ( \ R) [(L R) \ ( \ R)+]

Trong luận án, ta đã chỉ ra được cận bên phải của (2) tốt hơn cận

bên phải của (1) và đã chứng minh được (2), (3) và (4) thực chất chỉ

là một mặc dù chúng được diễn đạt bằng những biểu thức khác nhau.

Như đã phân tích, ta mong muốn các cận bên phải càng ít thuộc

tính càng tốt (càng nhỏ càng tốt). Điều này rõ ràng liên quan đến

việc rút gọn bài toán tìm khóa. Thật vậy, giả sử đã xác định được Z

là siêu khóa chứa mọi khóa của S = <, F>. Khi đó, việc rút gọn

bài toán tìm khóa của S được tiến hành qua các bước sau:

Bước 1. Xây dựng lược đồ S' = <', F'> trong đó

' = Z \ ( \ R)

và F' = Li ' Ri ' | (Li Ri) F, i = 1, 2,..., m

Bước 2. Tìm 'S theo một thuật toán nào đó.

Bước 3. Tìm S = ( \ R) K | K 'S .

Page 19: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

17

3.3. Kết luận chương 3

Bằng thực nghiệm, thuật toán tính bao đóng của Mora và cộng sự

đã chứng tỏ hiệu quả hơn các thuật toán tính bao đóng khác. Tuy

nhiên, thuật toán của Mora và cộng sự còn tồn tại một vài hạn chế và

tính đúng đắn của nó chưa được chứng minh. Chúng tôi đã tiến hành

chứng minh tính đúng đắn và cải tiến thuật toán này.

Thuật toán cải tiến hiệu quả hơn thuật toán của Mora và cộng sự

vì quá trình tính toán có sự thay thế các FD bởi các FD đơn giản hơn;

đặc biệt là trong nhiều trường hợp, quá trình tính bao đóng và tập F

được đơn giản đi rất nhiều vì tất cả các FD có vế phải chứa trong

Xnew đều bị loại bỏ trước khi xây dựng bao đóng.

Với việc rút gọn bài toán tìm khóa, dựa trên ngữ nghĩa quen thuộc

của FD trong mô hình dữ liệu quan hệ, chúng tôi đã cải tiến được

điều kiện cần (1) để có được điều kiện cần (3), đồng thời đã chứng

minh được các điều kiện cần (2), (3) và (4) thực chất chỉ là một. Đây

là những điều kiện cần để một tập con của là khóa tối tiểu của lược

đồ quan hệ S = <, F>. Việc tìm một điều kiện cần tốt hơn (2), (3)

hoặc (4) nhằm rút gọn hơn nữa bài toán tìm khóa là một vấn đề rất

đáng quan tâm.

Các kết quả chính trong chương này đã được công bố trong [CT3,

CT4, CT6, CT7].

Page 20: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

18

Chương 4.

VỀ MỘT PHÉP BIẾN ĐỔI TIỀN XỬ LÝ HIỆU QUẢ

CÁC TẬP PHỤ THUỘC HÀM

4.1. Giới thiệu

Cho r là một quan hệ trên . Mọi khẳng định có dạng XY,

trong đó X, Y , được gọi là một FD trên r. Ta nói r thỏa XY

nếu với mọi t1, t2 r có t1[X] = t2[X] kéo theo t1[Y] = t2[Y].

4.2. Sự dư thừa trong tập FD

Cho trước tập FD F, ký hiệu F (Z W) để chỉ Z W được

suy diễn từ F bằng hệ quy tắc suy diễn Armstrong.

Xét FD f = XY F:

Ta nói f là dư thừa trong F nếu F \ f | f.

Ta nói f là l-dư thừa trong F nếu tồn tại Z , Z X sao cho

(F \ f ) (X Z)Y | f

Ta nói f là r-dư thừa trong F nếu tồn tại U , U Y sao cho

(F \ f ) X(Y U) | f

Ta nói F có dư thừa nếu F chứa phần tử hoặc là dư thừa hoặc là l-

dư thừa hoặc là r-dư thừa.

4.3. Một phép biến đổi tiền xử lý hiệu quả các tập FD

Mora và cộng sự đã thiết kế một phép biến đổi tiền xử lý hiệu quả

sử dụng toán tử thay thế của logic thay thế SLFD để loại bỏ dư thừa

trong một tập FD. Cơ sở và tính đúng đắn của phép biến đổi tiền xử

lý này là định lý 4.1. Trong phần này, chúng tôi sẽ chỉ ra một lỗi sai

không chấp nhận được trong chứng minh của định lý 4.1 và đưa ra

một chứng minh mới, đúng và đơn giản hơn cho định lý đó; điều này

đã được chính tác giả Mora xác nhận là hoàn toàn đúng.

Page 21: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

19

4.3.1. Logic Paredaens

Định nghĩa ngôn ngữ Par: Par = XY | X, Y 2 và X

Định nghĩa: Logic Paredaens (LFD) là logic được cho bởi cặp (Par,

SPar) trong đó SPar là một lược đồ tiên đề AxPar: |ParS XY

nếu Y X và các quy tắc suy diễn sau:

Trans XY, Y Z |ParS XZ (quy tắc bắc cầu)

Augm XY |ParS XXY (quy tắc gia tăng)

Union XY, X Z |ParS XYZ (quy tắc hợp)

Comp XY, W Z |ParS XWYZ (quy tắc hợp thành)

Inters XY, X Z |ParS XY Z

trong đó Y Z (quy tắc giao)

Reduc XY |ParS XY Z

trong đó Y Z (quy tắc rút gọn)

Frag XYZ |ParS XY (quy tắc phân mảnh)

gAug XY |ParS UV

trong đó X U và V XY (quy tắc gia tăng suy rộng)

gTrans XY, Z U |ParS VW

trong đó Z XY, X V và W UV (quy tắc bắc cầu suy rộng)

Định lý 4.1 (P.Cordero et al.):

Cho XY, UV LFD với X Y = .

(a). Nếu X U thì

XY, UV ParS XY, (U Y)(V Y) (1)

(b). Nếu X U và X UV thì

XY, UV ParS XY, U(V Y) (2)

Cái hay và mới của định lý 4.1 là nó cho phép đưa vào hai quy tắc

thay thế quan trọng. Rõ ràng là không có hệ tiên đề nào cho FD có

Page 22: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

20

những quy tắc thay thế nói trên, có khả năng phát hiện và loại bỏ dư

thừa trong một tập FD hiệu quả như vậy.

Chứng minh của định lý 4.1 đã được P.Cordero et al thực hiện.

Hãy xét chứng minh phần (b) chiều của P.Cordero et al như sau:

1. U X AxFD (tiên đề phản xạ)

2. XY (giả thiết)

3. U Y (1, 2, bắc cầu suy rộng)

4. U (V Y) (giả thiết)

5. U VY (3, 4, quy tắc hợp)

6. U V (2, 5, gia tăng suy rộng)

Tiếp theo, ta hãy xem bước 1:

1. U X AxFD (tiên đề phản xạ)

Khẳng định này rõ ràng là sai vì trong phát biểu phần (b) của định

lý 4.1, ta có các giả thiết X U, X UV, X Y = .

4.3.2. Một chứng minh mới cho định lý 4.1

Để đơn giản cách chứng minh định lý 4.1, ta sử dụng hệ ba tiên

đề A1, A2, A3 của Armstrong cùng với hai quy tắc suy diễn sau:

- Nếu X Y và U V thì XU YV (Quy tắc hợp)

- Nếu X Y thì X Z với mọi Z Y (Quy tắc tách)

Chứng minh. (a).

Vì X U nên X Y U Y .

Vì X Y = nên X Y = X U Y

Từ đó ta có dãy suy diễn sau:

1. (U Y) X (A1)

2. XY (Giả thiết)

3. (U Y) Y (1, 2, A3)

4. (U Y) (U Y) (A1)

5. (U Y) UY (3, 4, Quy tắc hợp)

6. (U Y) U (5, Quy tắc tách)

7. U V (Giả thiết)

8. (U Y) V (6, 7, A3)

9. (U Y) (V Y)

(8, Quy tắc tách)

(a).

1. XY (Giả thiết)

2. (U Y) (V Y) (Giả thiết)

3. U X (A1, vì X U)

4. U Y (3, 1, A3)

5. U VY (2, 4, Quy tắc hợp)

6. U V (5, Quy tắc tách)

Page 23: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

21

(b).

1. U V (Giả thiết)

2. U (V Y) (1, Quy tắc tách)

(b).

1. XY (Giả thiết)

2. U (V Y) (Giả thiết)

3. U U(V Y) (2, A2)

4. U(V Y) (UV Y) (A1)

do có U (V Y) (U Y) (V Y)

và (U Y) (V Y) = UV Y

5. U (UV Y) (3, 4, A3)

6. (UV Y) X (A1)

do có X UV và X Y = nên

X = (X Y) UV Y

7. (UV Y) Y (6, 1, A3)

8. U Y (5, 7, A3)

9. U UVY (5, 8, A2)

10. U V (9, Quy tắc tách)

Trong chứng minh mới của định lý 4.1, việc chứng minh phần (a)

về cơ bản là giống với chứng minh phần (a) ban đầu. Cái khác nhau

là ở chỗ cách thức giải thích các bước suy diễn. Hơn nữa, trong

chứng minh mới, chúng tôi sử dụng hệ tiên đề Armstrong, nên việc

giải thích các bước suy diễn là đơn giản, rõ ràng hơn.

Để khắc phục lỗi sai trong chứng minh phần (b) của định lý 4.1,

chứng minh phần (b) của chúng tôi ở đây là hoàn toàn mới. Nó khiến

cho định lý 4.1, một định lý rất hay, là nền tảng cho phép biến đổi

tiền xử lý loại bỏ hiệu quả các dư thừa trong một tập FD cho trước,

đứng vững và sử dụng được.

Trong thực hành, trong nhiều trường hợp, để đơn giản hơn, ta có

thể dùng quy tắc thay thế sau:

Nếu X U, X V và X Y = thì

X Y, U V X Y, U (V Y) (3)

Thực nghiệm các quy tắc thay thế trên nhiều tập FD với số lượng

và kích thước khác nhau đã cho thấy tỷ lệ phần trăm số lần áp dụng

các quy tắc thay thế là rất cao và tăng đáng kể với độ phức tạp của

các tập FD.

- Đối với 28,25% các tập FD, không cần thiết áp dụng quy tắc bắc

cầu (A3) và phép biến đổi tiền xử lý loại bỏ dư thừa hiệu quả.

Page 24: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

22

- Kích thước của các tập FD được rút gọn tới 52,89%

- Khi số các thuộc tính tăng lên thì số trường hợp trong đó không

cần áp dụng quy tắc bắc cầu (A3) cũng tăng lên. Điều này chứng tỏ

quy tắc thay thế đặc biệt thích hợp để làm việc với các lược đồ cơ sở

dữ liệu lớn.

- Số phần trăm áp dụng các quy tắc thay thế không phụ thuộc vào

số thuộc tính và độ dài của FD.

4.4. Tổng kết chương 4

Sự dư thừa làm tăng kích thước không cần thiết khi lưu trữ dữ

liệu, là nguyên nhân dẫn đến sự không nhất quán dữ liệu và làm giảm

hiệu quả trong quá trình quản lý và khai thác các hệ cơ sở dữ liệu.

Phép biến đổi tiền xử lý để loại bỏ dư thừa trong các tập FD là

mới và rất hiệu quả. Cơ sở của phép biến đổi tiền xử lý này là định lý

4.1. Đáng tiếc là chứng minh phần (b) của định lý 4.1 là sai và không

chấp nhận được. Trong chương này, chúng tôi đã đưa ra một chứng

minh mới cho định lý 4.1, cũng như đưa ra một quy tắc thay thế mới

đơn giản và dễ áp dụng trong thực hành. Điều này khiến cho định lý

4.1 đứng vững và áp dụng được.

Xây dựng thêm các quy tắc thay thế mới cho việc tiền xử lý các

tập FD cũng là một hướng nghiên cứu đáng quan tâm.

Các kết quả chính trong chương này được công bố trong [CT5].

Page 25: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

23

KẾT LUẬN

Luận án đã trình bày khái quát về FD và RFD trong mô hình dữ

liệu quan hệ, nghiên cứu về thuật toán tính bao đóng của một tập

thuộc tính và vấn đề rút gọn cho bài toán xác định khóa của lược đồ

quan hệ, nghiên cứu về một phép biến đổi tiền xử lý hiệu quả các tập

FD, nghiên cứu về AFD và CFD. Các kết quả đạt được của luận án

được tóm tắt như sau:

- Một số kết quả về FD, AFD (chỉ rõ mối quan hệ giữa các kết

quả của hai công trình, chứng minh một số bổ đề, tìm được một số

liên hệ mới giữa một số độ đo xấp xỉ thường xuyên được sử dụng

cho AFD, xây dựng các thuật toán dùng ma trận để phát hiện FD,

AFD) và một vài kết quả bước đầu về một thứ tự phân cấp giữa các

FD, CFD và AR (điều chỉnh phù hợp cho biểu thức xác định một

quan hệ con (mảnh ngang), đề xuất cải tiến toán tử giao mẫu ,

chứng minh được (X, r) = FX ).

- Đề xuất một thuật toán cải tiến tính bao đóng của một tập thuộc

tính đối với một tập FD.

- Với việc rút gọn bài toán tìm (phát hiện) khóa, dựa trên ngữ

nghĩa quen thuộc của FD trong mô hình quan hệ, chúng tôi đã cải

tiến được một điều kiện cần và chứng minh được ba điều kiện cần

thực chất chỉ là một mặc dù chúng được diễn đạt bởi các biểu thức

khác nhau.

- Chỉ ra được lỗi sai nghiêm trọng trong chứng minh của một định

lý là cơ sở cho phép biến đổi tiền xử lý để loại bỏ dư thừa trong tập

FD. Đồng thời, chúng tôi đã đưa ra một chứng minh mới, đơn giản

hơn cho định lý đó, cũng như đưa ra một quy tắc thay thế đơn giản

và dễ áp dụng trong thực hành.

Page 26: PHÁT HIỆN PHỤ THUỘC HÀM VÀ PHỤ THUỘC HÀM SUY RỘNG …gust.edu.vn/media/26/uftai-ve-tai-day26836.pdf · HÀM SUY RỘNG TRONG CƠ SỞ DỮ LIỆU Chuyên ngành: Cơ

24

DANH MỤC CÔNG TRÌNH CỦA TÁC GIẢ

[CT1] Vũ Quốc Tuấn, Về một số kết quả liên quan tới phụ thuộc hàm

xấp xỉ trong cơ sở dữ liệu quan hệ, Kỷ yếu Hội thảo quốc gia

lần thứ XVI: Một số vấn đề chọn lọc của Công nghệ thông tin

và truyền thông - Đà Nẵng, 11-2013, tr. 352-354.

[CT2] Vũ Quốc Tuấn, Vũ Chính Thúy, Phương pháp ma trận phát

hiện phụ thuộc hàm trong cơ sở dữ liệu, Tạp chí NCKH & CN

Quân sự, Số 34, 12-2014, tr. 73-80.

[CT3] Hồ Thuần, Vũ Quốc Tuấn, Một thuật toán mới tính bao đóng

của tập thuộc tính đối với một tập phụ thuộc hàm, Tạp chí

NCKH & CN Quân sự, Số 45, 10-2016, tr. 109-117.

[CT4] Vũ Quốc Tuấn, Hồ Thuần, Một số kết quả về rút gọn bài toán

tìm khóa, Tạp chí NCKH & CN Quân sự, Số 47, 02-2017, tr.

102-107.

[CT5] Vũ Quốc Tuấn, Hồ Thuần, Về một phép biến đổi tiền xử lý

hiệu quả các tập phụ thuộc hàm, Tạp chí NCKH & CN Quân

sự, Số 50, 08-2017, tr. 162-170.

[CT6] Vũ Quốc Tuấn, Hồ Thuần, Một số kết quả về thuật toán tính

bao đóng và rút gọn bài toán tìm khóa của lược đồ quan hệ,

Journal of Research and Development on Information and

Communication Technology (Bộ Thông tin và Truyền thông),

Tập V-2, Số 18 (38), 12-2017, tr. 12-18.

[CT7] Vũ Quốc Tuấn, Hồ Thuần, Về một số kết quả liên quan đến

rút gọn bài toán tìm khóa của lược đồ quan hệ, Tạp chí NCKH

& CN Quân sự, Số 54, 04-2018, tr. 157-162.

[CT8] Vu Quoc Tuan, Some results about relaxed functional

dependencies, Journal of Cybernetics and Information

Technologies, Bulgarian (Submitted).

[CT9] Vu Quoc Tuan, Some improvements about a unified hierarchy

for functional dependencies, conditional functional

dependencies and association rules, Journal of Military

Science and Technology, Vietnam, Special issue - No.60A, 05-2019, pp. 87-94.