1. Trang chủ
  2. » Luận Văn - Báo Cáo

luận văn thạc sỹ công nghệ thông tin

65 1,1K 2
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 65
Dung lượng 1,07 MB

Nội dung

ứng dụng phép dịch chuyển lược đồ quan hệ trong cơ sở dữ liệu

Trang 1

LƯỢC ĐỒ QUAN HỆ TRONG CƠ SỞ DỮ LIỆU

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

T h á i N g u y ê n - 2 0 0 9

Trang 2

ĐẠI HỌC THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN

V Ũ T R Í D Ũ N G

ỨNG DỤNG PHÉP DỊCH CHUYỂN

LƯỢC ĐỒ QUAN HỆ TRONG CƠ SỞ DỮ LIỆU

CHUYÊN NGÀNH : KHOA HỌC MÁY TÍNH

MÃ SỐ : 60 48 35 01

LUẬN VĂN THẠC SỸ CÔNG NGHỆ THÔNG TIN

Người hướng dẫn khoa học PGS TSKH NGUYỄN XUÂN HUY

T h á i N g u y ê n - 2 0 0 9

Trang 3

MỤC LỤC

CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI VÀ CÁC KHÁI NIỆM CƠ SỞ 4

1.1.2 Nội dung của đề tài, các vấn đề cần giải quyết 4

1.2.7 Chuẩn hoá LĐQH trên cơ sở phụ thuộc hàm 31 CHƯƠNG 2 PHÉP DỊCH CHUYỂN LƯỢC ĐỒ QUAN HỆ 36

2.3 Định lý cơ bản của phép dịch chuyển LĐQH 39 2.4 Dạng biểu diễn thứ nhất của khóa 43

Trang 4

2.5 Dạng biểu diễn thứ hai của khóa 45

Trang 5

DANH MỤC CÁC KÝ HIỆU, VIẾT TẮT

1NF 1st normal form - dạng chuẩn 1

2NF 2nd normal form - dạng chuẩn 2

3NF 3rd normal form - dạng chuẩn 3

CSDL Cơ sở dữ liệu

LĐQH Lƣợc đồ quan hệ

PTH phụ thuộc hàm

FD phụ thuộc hàm

╞ suy dẫn theo tiên đề (theo logic)

├ suy dẫn theo quan hệ

Trang 6

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

LỜI NÓI ĐẦU

Trong quản lý các cơ sở dữ liệu (CSDL), phụ thuộc dữ liệu được hiểu là những mệnh đề mô tả các ràng buộc mà dữ liệu phải đáp ứng trong thực tế Nhờ có những mô tả phụ thuộc này mà hệ quản trị cơ sở dữ liệu có thể quản lý tốt được chất lượng dữ liệu Lý thuyết về các phụ thuộc dữ liệu đóng vai trò quan trọng trong việc

mô tả thế giới thực, phản ánh ngữ nghĩa dữ liệu trong cơ sở dữ liệu Phụ thuộc dữ liệu được Codd, tác giả của mô hình dữ liệu quan hệ đặt nền móng từ những năm 70 với khái niệm phụ thuộc hàm Sau đó một loạt tác giả khác tiếp tục phát triển các dạng phụ thuộc bậc cao, phụ thuộc mờ cũng như xây dựng các hệ tiên đề cho các lớp phụ thuộc - tức là đặt cơ sở lý thuyết về phụ thuộc dữ liệu

Một điều khá tự nhiên là ngay từ những ngày đầu phát triển lý thuyết thiết kế

cơ sở dữ liệu, logic đã được chọn như một ngôn ngữ hữu hiệu để đặc tả phụ thuộc

dữ liệu, do đó, trong số các loại hình phụ thuộc dữ liệu rất đa dạng được đề xuất và phát triển sau này, các phụ thuộc logic luôn luôn là trọng tâm chú ý của các nhóm nghiên cứu

Đề tài này tập trung vào tìm hiểu và nghiên cứu khái niệm chuyển dịch lược

đồ quan hệ, đưa chúng về dạng thu gọn và nhận được các biểu diễn quan trọng cho bao đóng, khóa và phản khoá Các kết quả thu được sử dụng trong quá trình thiết kế các cơ sở dữ liệu

Nội dung đề tài được cấu trúc như sau:

Chương 1 giới thiệu về đề tài và các khái niệm chung về mô hình quan hệ với

trọng tâm là các khái niệm hình thức của mô hình quan hệ, trong đó vận dụng chủ

yếu các cấu trúc rời rạc Phụ thuộc hàm (PTH) là lớp phụ thuộc đầu tiên của phụ thuộc logic và đồng thời cũng là lớp phụ thuộc kinh điển theo nghĩa, được Codd, tác

giả của mô hình dữ liệu quan hệ, đề xuất sớm nhất và được sử dụng như một công

cụ thiết kế các cơ sở dữ liệu chuẩn hóa

Trang 7

Chương 2 trình bày một kỹ thuật thu gọn lược đồ quan hệ (LĐQH) được gọi

là phép dịch chuyển lược đồ quan hệ Bản chất của kỹ thuật này là loại bỏ khỏi LĐQH ban đầu một số thuộc tính không quan trọng theo nghĩa chúng không làm

ảnh hưởng đến kết quả tính toán các đối tượng đang được quan tâm như bao đóng, khóa, phản khóa Mặc dù LĐQH thu được qua phép dịch chuyển không tương đương với LĐQH ban đầu, nhưng ta có thể thu được các đối tượng cần tìm bằng những phép toán đơn giản như loại bỏ hoặc thêm một số thuộc tính Điều lý thú là sau khi loại bỏ một số thuộc tính thì một số PTH sẽ được loại bỏ theo vì chúng trở thành các PTH tầm thường (có vế trái chứa về phải) hoặc mang thông tin tiền định (đó là các PTH dạng  X) Các phép dịch chuyển LĐQH được phát triển cho lớp

các phụ thuộc logic đầu tiên là phụ thuộc hàm cho ta một số kết quả lý thú về biểu diễn bao đóng, khóa, phản khóa cùng một số dấu hiệu cần và đủ để nhận biết các đặc trưng tương quan giữa các đối tượng nói trên

Chương 3 cài đặt chương trình mô phỏng ứng dụng phép dịch chuyển lược

đồ quan hệ vào thiết kế cơ sở dữ liệu cùng với một số thí dụ

Phần cuối của luận văn là kết luận và hướng phát triển và các tài liệu tham khảo

Em xin bày tỏ lòng chân thành cảm ơn PGS TSKH Nguyễn Xuân Huy - người Thầy đã tận tình hướng dẫn, giúp đỡ em hoàn thành luận văn này

Em xin chân thành cảm ơn Khoa Công nghệ thông tin - Đại học Thái Ngyên

đã tạo điều kiện về tinh thần cũng như cơ sở vật chất để em được học tập, nâng cao kiến thức và thực hiện luận văn tốt nghiệp

Em xin chân thành cảm ơn các Thầy, Cô giáo ở Viện Công nghệ thông tin - Viện Khoa học và Công nghệ Việt Nam, các Thầy, Cô giáo ở Khoa Công nghệ thông tin - Đại học Thái Nguyên đã nhiệt tình giảng dạy, hướng dẫn và cung cấp cho em những kiến thức vô cùng quí báu, để em có điều kiện nâng cao kiến thức và hiểu biết của mình trong lĩnh vực công nghệ thông tin

Trang 8

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Em cũng xin chân thành cảm ơn Ban lãnh đạo Liên đoàn Lao động tỉnh Hà Nam, Ban giám hiệu Trường trung cấp nghề Kinh tế - Kỹ thuật Hà Nam, gia đình, người thân và bạn bè đã tạo điều kiện thuận lợi, động viên và giúp đỡ em trong suốt thời gian học tập, nghiên cứu và làm luận văn tốt nghiệp

Học viên

Vũ Trí Dũng

Trang 9

CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI VÀ CÁC KHÁI NIỆM CƠ SỞ

1.1 TỔNG QUAN VỀ ĐỀ TÀI

1.1.1 Giới thiệu đề tài

Trong quản lý các cơ sở dữ liệu lớn và phức tạp đòi hỏi nhiều thuật toán hữu hiệu để tính toán các đối tượng như bao đóng, khóa, phủ Một số thuật toán tốt theo nghĩa độ phức tạp tính toán giới hạn ở các hàm tuyến tính hoặc đa thức theo chiều dài dữ liệu vào đã được công bố như thuật toán tính bao đóng của tập thuộc tính, thuật toán tìm một khóa, thuật toán xác định thành viên hay thuật toán xác định phụ thuộc hàm suy dẫn, thuật toán tìm giao các khóa, thuật toán xác định một lược

đồ quan hệ có một khóa duy nhất… [1, 2, 8]

Một nhận xét tự nhiên là nếu kích thước của lược đồ quan hệ càng nhỏ thì các thuật toán càng phát huy hiệu quả hơn Một số hướng nghiên cứu tinh giản các lược đồ cơ sở dữ liệu được thực hiện thông qua các phép biến đổi tương đương, chẳng hạn đưa tập phụ thuộc hàm về dạng thu gọn hoặc thu gọn tự nhiên, dạng không dư, dạng tối ưu (chứa ít ký hiệu nhất)… đã được công bố [3, 5, 6, 7]

Trong phép dịch chuyển lược đồ quan hệ Bản chất của kỹ thuật này là loại

bỏ khỏi lược đồ quan hệ ban đầu một số thuộc tính không quan trọng theo nghĩa

chúng không làm ảnh hưởng đến kết quả tính toán các đối tượng đang quan tâm như bao đóng, khóa, Mặc dù lược đồ quan hệ thu được qua phép thu gọn không tương đương với lược đồ quan hệ ban đầu, nhưng ta có thể thu được các đối tượng cần tìm bằng những phép toán đơn giản như loại bỏ hoặc thêm một số thuộc tính Điều lý thú là sau khi loại bỏ một số thuộc tính thì một số phụ thuộc hàm sẽ được loại bỏ theo, vì chúng trở thành các phụ thuộc hàm tầm thường (có vế trái chứa về phải) hoặc mang thông tin tiền định (đó là các phụ thuộc hàm dạng  X)

Trang 10

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

1.1.2 Nội dung của đề tài, các vấn đề cần giải quyết

Luận văn tập trung tìm hiểu và cải tiến các kỹ thuật và thuật toán thu gọn

lược đồ quan hệ p thông qua phép dịch chuyển lược đồ quan hệ theo một tập thuộc

tính X Khảo sát sự phụ thuộc của phép dịch chuyển thông qua các tính chất của tập thuộc tính X Khảo sát hai dạng biểu diễn khóa của lược đồ quan hệ qua phép dịch chuyển Xây dựng một hệ trình minh họa và đánh giá các kết quả lý thuyết

1.1.3 Phương pháp nghiên cứu

1 Tiếp cận chủ yếu để giải quyết các vấn đề đặt ra trong phạm vi đề tài là tiên

đề hóa Các hệ tiên đề được xây dựng trên cơ sở một hệ suy dẫn hình thức với các tính chất cơ bản về các đối tượng cơ sở và các mối liên hệ giữa

chúng Cơ sở toán học của các hệ tiên đề là định lý về tính xác đáng và đầy

đủ cùng với các định lý về điều kiện cần và đủ cho các hệ tiên đề tương đương

2 Tiếp cận hình thức vận dụng chủ yếu các phương pháp và các cấu trúc của toán học rời rạc (bao gồm cả logic hình thức), kết hợp với các phương pháp đối sánh, mô hình hóa, tối ưu và quy hoạch rời rạc

3 Kết hợp chặt chẽ giữa lý thuyết và thực hành, sử dụng và phát triển các phần mềm nói chung và các phần mềm toán học nói riêng để kiểm định và thể hiện các kết quả lý thuyết

1.1.4 Phạm vi ứng dụng

Các kết quả thu được có thể vận dụng cho các quy trình thiết kế các cơ sở dữ liệu quan hệ dùng trong các hệ thống thông tin, cụ thể là:

- Tính bao đóng của các tập thuộc tính,

- Tìm khóa của các lược đồ quan hệ

- Chuẩn hoá LĐQH

Trang 11

1.1.5 Kết quả đạt được

Về lý thuyết, luận văn tập trung vào các kết quả sau đây:

- Khái niệm về phép dịch chuyển lược đồ quan hệ,

- Phát biểu và chứng minh công thức tính bao đóng qua phép dịch chuyển lược đồ quan hệ,

- Phát biểu và chứng minh kết quả về dạng biểu diễn khóa thứ nhất,

- Phát biểu và chứng minh kết quả về dạng biểu diễn khóa thứ hai,

- Phân tích thuật toán tìm khóa, phát triển thuật toán tìm tất cả các khoá

Về thực hành luận văn sẽ cài đặt các kết quả lý thuyết dưới dạng chương trình bao gồm các chức năng sau:

 Nạp và cập nhật dữ liệu: thuộc tính và các phụ thuộc hàm

 Tính bao đóng

 Tìm các khóa của lược đồ quan hệ

 Chuẩn hoá LĐQH

1.2 CÁC KHÁI NIỆM CƠ SỞ

Trong các mô hình dữ liệu thì mô hình dữ liệu quan hệ được sử dụng rộng rãi hơn cả do tính trực quan, kiến trúc đơn giản và có cơ sở toán học chặt chẽ Ngoài ra, người ta đã chứng minh được sự tương đương và cung cấp các phép chuyển đổi giữa mô hình dữ liệu quan hệ với mô hình mạng và phân cấp Một cách giải thích rất trực quan cho mô hình dữ liệu quan hệ là các dữ liệu của bài toán quản lý được

tổ chức theo hàng và cột, cột biểu thị thuộc tính thông tin cần quản lý của một đối tượng, thuộc tính này còn gọi là tiêu đề cột và các giá trị trong cột đó có cùng một kiểu Tập hợp tất cả các giá trị thuộc tính trên một hàng (gọi là bộ) là dữ liệu về một đối tượng đang quản lý

Trang 12

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Mục này trình bày một số khái niệm mở đầu về mô hình quan hệ Trọng tâm được tập trung vào các khái niệm hình thức của mô hình quan hệ, trong đó vận dụng chủ yếu các cấu trúc rời rạc Phần đầu tiên của mục này giới thiệu định nghĩa về quan hệ, thuộc tính và bộ Phần thứ hai giới thiệu về đại số quan hệ như một ngôn ngữ truy nhập dữ liệu trong các cơ sở dữ liệu quan hệ Phần thứ ba mô tả phụ thuộc hàm như một công cụ toán học trợ giúp cho việc biểu đạt ngữ nghĩa dữ liệu và đảm bảo tính nhất quán của dữ liệu trong cơ sở dữ liệu, phụ thuộc hàm là lớp phụ thuộc đầu tiên của phụ thuộc logic và đồng thời cũng là lớp phụ thuộc kinh điển theo nghĩa, được Codd, tác giả của mô hình dữ liệu quan hệ đề xuất sớm nhất và được sử dụng như một công cụ thiết kế các cơ sở dữ liệu chuẩn hóa Các tính chất của phụ thuộc hàm và các hệ tiên đề cho phụ thuộc hàm được mô tả đầy đủ, trong đó hệ tiên

đề Armstrong được sử dụng nhiều hơn cả Một trong những khái niệm quan trọng của phụ thuộc hàm là bao đóng của tập thuộc tính và các tính chất cơ bản của phép toán lấy bao đóng được trình bày trong phần thứ tư của mục này Phần thứ năm giới thiệu các loại phủ quan trọng nhất, đóng vai trò thu gọn các tập phụ thuộc hàm, tạo thuận tiện cho tối ưu hóa các thao tác ngữ nghĩa Hai khái niệm chủ chốt liên quan đến phụ thuộc hàm là khóa và các dạng chuẩn của lược đồ quan hệ được trình bày trong hai phần cuối, phần thứ sáu và thứ bảy của mục

1.2.1 Quan hệ, thuộc tính, bộ

Đ ị n h n g h ĩ a

Cho tập hữu hạn U = {A 1 , A 2 , , A n } khác rỗng (n 1) Các phần tử của U được gọi là thuộc tính Ứng với mỗi thuộc tính A i U, i = 1,2, ,n có một tập chứa ít nhất hai phần tử dom(A i ) được gọi là miền trị của thuộc tính A i Gọi D

là hợp của các dom(A i ), i = 1,2, ,n Một quan hệ R với các thuộc tính U, ký hiệu là R(U), là một tập các ánh xạ t: UD sao cho với mỗi A i U ta có t(A i)dom(A i ) Mỗi ánh xạ được gọi là một bộ của quan hệ R

Mỗi quan hệ R(U) có hình ảnh là một bảng, mỗi cột ứng với một thuộc tính, mỗi dòng là một bộ

Trang 13

Ta ký hiệu t(U) là một bộ trên tập thuộc tính U

Một quan hệ rỗng, ký hiệu , là quan hệ không chứa bộ nào

Vì mỗi quan hệ là một tập các bộ nên trong quan hệ không có hai bộ trùng lặp

Các ký hiệu và một số quy ước

Theo truyền thống của lý thuyết cơ sở dữ liệu chúng ta chấp nhận các quy định sau đây:

Các thuộc tính được ký hiệu bằng các chữ LATIN HOA đầu bảng chữ A, B, C, Tập thuộc tính được ký hiệu bằng các chữ LATIN HOA cuối bảng chữ X, Y, Z,

Các phần tử trong một tập thường được liệt kê như một xâu ký tự, không có

các ký hiệu biểu diễn tập, chẳng hạn ta viết X = ABC thay vì viết

X = A, B, C XY biểu diễn hợp của hai tập X và Y, X Y Phép trừ hai tập X

và Y được ký hiệu là X\Y, hoặc X-Y

Một phân hoạch của tập M (thành các tập con rời nhau và có hợp là M), X1,

Trang 14

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Ta chấp nhận quy ước sau đây: Mọi cặp bộ t và v trong mọi quan hệ giống nhau trên miền rỗng các thuộc tính, t. = v.

Hàm Attr(R) cho tập thuộc tính của quan hệ R

Hàm Card(R) cho lực lượng (số bộ) của quan hệ R

Trong trường hợp tập thuộc tính U đã cho trước ta có thể viết đơn giản R thay cho R(U)

Ký hiệu REL(U) là tập toàn thể các quan hệ trên tập thuộc tính U, REL_p(U)

là tập toàn thể các quan hệ có không qúa p bộ trên tập thuộc tính U, p  1

Hai quan hệ R và S được gọi là tương thích nếu chúng có cùng một tập thuộc tính, tức là nếu Attr(R) = Attr(S)

Với mỗi bộ t trong quan hệ R(U) và mỗi bộ v trong quan hệ S(V) ta ký hiệu tv

là phép dán hai bộ t và v tv cho ta bộ r trên tập thuộc tính UV thoả điều kiện: r.U = t và r.V = v

Với mỗi bộ t trong quan hệ R(U) và với mỗi quan hệ S(V) ta ký hiệu tS là phép dán bộ t với quan hệ S tS cho ta quan hệ P(UV) = { tv | vS }

T h í d ụ

Cho U = ABC, V = BD, t(U) = (a,b,c), v(V) = (b,d) Ta có r(UV) = t * v = (a,b,c,d) là một bộ trên tập thuộc tính UV = ABCD

Cho thêm quan hệ S(BD)

Khi đó t*S cho ta quan hệ P(ABCD) sau đây

Trang 15

hai bước sau:

1) Thay mọi xuất hiện của mỗi thuộc tính A trong biểu thức chọn e bằng trị tương ứng của A trong bộ t, t.A, ta thu được một mệnh đề logic b

2) Tính trị của b Nếu là đúng (True) thì bộ t thoả điều kiện e; ngược lại, nếu trị của b là sai (False) thì bộ t không thoả điều kiện e

Trong các biểu thức chọn ta sử dụng ký hiệu cho các phép toán logic như sau:

Hội: Tuyển: Phủ định: ¬, Kéo theo: 

(i) Xoá các cột không thuộc X của bảng R,

Trang 16

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

(ii) Lược bớt các dòng giống nhau trong bảng kết quả: chỉ giữ lại một dòng trong số các dòng giống nhau

Phép kết nối tự nhiên

Đ ị n h n g h ĩ a

Cho hai quan hệ R(U) và S(V) Đặt M = UV Phép kết nối (tự nhiên) hai quan

hệ R(U) và S(V), ký hiệu RS, cho ta quan hệ chứa các bộ được dán từ các bộ

u của quan hệ R với mỗi bộ v của quan hệ S (sao cho các trị trên miền thuộc tính chung M của hai bộ này giống nhau)

P(UV) = R S ={ uv | uR, vS, u.M = v.M } Nếu M = UV = , R S sẽ cho ta tích Descartes, trong đó mỗi bộ của quan

hệ R sẽ được ghép với mọi bộ của quan hệ S

Phép cộng (hợp)

Đ ị n h n g h ĩ a

Phép hợp (theo lý thuyết tập hợp hoặc nối dọc) hai quan hệ tương thích R(U)

và S(U), ký hiệu RS, hoặc R+S, cho ta quan hệ chứa các bộ của mỗi quan hệ

Trang 17

Phép giao (theo lý thuyết tập hợp hoặc lấy phần chung) hai quan hệ tương thích R(U) và S(U), ký hiệu RS, hoặc R&S cho ta quan hệ chứa các bộ xuất

hiện đồng thời trong cả hai quan hệ thành phần,

P(U) = R S ={ t | tR, tS } Các phép toán hợp, trừ và giao đựơc gọi là các phép toán tập hợp trên các

quan hệ (tương thích)

Phép chia

Đ ị n h n g h ĩ a

Cho hai quan hệ R(U) và S(V) thỏa V U Đặt M = U\V Phép chia quan hệ

R cho quan hệ S, ký hiệu R:S, cho ta quan hệ

P(M) = R : S = { t.M | t R, (t.M)*S R }

Thứ tự thực hiện các phép toán quan hệ

Trong một biểu thức quan hệ các phép toán một ngôi có độ ưu tiên cao hơn

(do đó được thực hiện sớm hơn) các phép toán hai ngôi Tiếp đến là nhóm các phép toán kết nối, giao và chia, cuối cùng là nhóm các phép toán cộng và trừ Thứ tự ưu tiên từ cao đến thấp của các phép toán quan hệ được liệt kê như sau:

Một số hàm tiện ích

SumR, A: cho tổng các giá trị số trong thuộc tính cột A của quan hệ R

AvgR, A: cho trung bình cộng các giá trị trong thuộc tính cột A của quan hệ R

Trang 18

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

MaxR, A: cho giá trị lớn nhất trong thuộc tính cột A của quan hệ R

MinR, A: cho giá trị nhỏ nhất trong thuộc tính cột A của quan hệ R

Nếu trong biểu thức quan hệ có chứa các hàm tiện ích thì các hàm này được

thực hiện sớm nhất trong ngữ cảnh cho phép

vế trái và Y là vế phải của PTH f Ta cũng dùng hai toán tử LS(f) và RS(f) để xác định vế trái và vế phải của PTH f, cụ thể là nếu f:XY thì LS(f) = X, RS(f)=Y

Cho quan hệ R(U) và một PTH f: XY trên U Ta nói quan hệ R thoả PTH f

và viết R(f), nếu hai bộ tuỳ ý trong R giống nhau trên X thì chúng cũng giống nhau trên Y,

R(XY)  (u,v R): (u.X = v.X) (u.Y = v.Y)

Trang 19

Ta dùng ký hiệu X ↛ Y với ý nghĩa tập thuộc tính Y không phụ thuộc hàm vào tập thuộc tính X

Cho tập PTH F trên tập thuộc tính U Ta nói quan hệ R(U) thoả tập PTH F, và viết R(F), nếu R thoả mọi PTH trong F,

R(F)  ( f F): R(f) Nếu quan hệ R thỏa PTH f ta cũng nói PTH f đúng trong quan hệ R

T h í d ụ

Cho quan hệ R(A, B, C, D) như sau

và các PTH f 1 : AA, f 2 : AB, f 3 : ACC, f 4 : AD, f 5 : DA, f 6 : AC Khi đó các PTH f 1 - f 5 đúng trong R, mặt khác, R không thỏa PTH f 6

Cho trước tập PTH F trên tập thuộc tính U, ký hiệu SAT(F) là tập toàn thể các quan hệ trên U thoả tập PTH F, SAT_p(F), p 1 là tập toàn thể các quan hệ có không quá p bộ trên U và thoả tập PTH F , cụ thể là

SAT(F) = { R | RREL(U), R(F) } SAT_p(F) = { R | RREL_p(U), R(F) }

Cho tập  các quan hệ trên U, ký hiệu FD() là tập các PTH trên U đúng

trong mọi quan hệ của 

Trang 20

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Cho tập PTH F trên tập thuộc tính U Bao đóng của F, ký hiệu F + là tập nhỏ

nhất các PTH trên U chứa F và thoả các tính chất F1-F3 của hệ tiên đề Armstrong A o sau đây:

Các PTH có vế trái chứa vế phải như mô tả trong F1 được gọi là tầm thường Các

PTH tầm thường đúng trong mọi quan hệ Ngoài ra, các quan hệ trên tập thuộc tính

U có không quá một bộ thỏa mọi PTH trên U

Suy dẫn theo tiên đề (suy dẫn logic)

Đ ị n h n g h ĩ a

Ta nói PTH f được suy dẫn theo tiên đề (hoặc suy dẫn logic) từ tập PTH F và

ký hiệu là F╞ f, nếu f F +

F╞ f f F + Nói cách khác PTH f được suy dẫn theo tiên đề từ tập PTH F nếu xuất phát từ

F, áp dụng các luật F1, F2 và F3 của hệ tiên đề Armstrong A o sau hữu hạn lần

F├ f SAT(F) SAT(f)

Trang 21

Cho tập thuộc tính U và tập PTH F trên U, ta định nghĩa F* là tập các PTH f trên U được suy dẫn theo quan hệ từ tập PTH F

F├ p f SAT_p(F) SAT_p(f) Cho tập thuộc tính U và tập PTH F trên U, ta định nghĩa F' là tập các PTH f trên U được suy dẫn theo quan hệ có không quá hai bộ từ tập PTH F

F' = { f: XY | X,Y U, F├2 f }

Đ ị n h l ý

(Định lý tương đương)

F + = F * = F' Nói cách khác, đối với phụ thuộc hàm, ba loại suy dẫn sau là tương đương (i) Suy dẫn logic: F╞ f ,

(ii) Suy dẫn theo quan hệ: F├ f , và

(iii) Suy dẫn theo quan hệ có không quá hai bộ: F├2 f

Trang 22

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Một số tính chất của PTH

Cho tập thuộc tính U và các tập phụ thuộc hàm F, G trên U, tập một số quan

hệ  trên U, các quan hệ R và S trên U Dễ dàng chứng minh các tính chất sau

đây:

1 Nếu F G thì SAT(F) SAT(G)

2 SAT(FG) = SAT(F) SAT(G)

Một số tính chất mở rộng của PTH

Sử dụng ba tiên đề Armstrong ta dễ dàng chứng minh các tính chất F4 -F11 sau đây Một số tính chất được chia nhỏ nhằm mục đích mô tả các hệ tiên đề khác cho PTH trong các mục tiếp theo

Trang 23

Trong chương này chúng ta chỉ xét một loại ràng buộc là PTH và một số biến

thể của PTH

Theo quy ước trên, trong chương này, chúng ta hiểu lược đồ quan hệ (LĐQH)

là một cặp a = (U,F), trong đó U là tập hữu hạn các thuộc tính, F là tập các PTH trên U

Trang 24

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

X + = {A U | X AF +}

Thuật toán tìm bao đóng của một tập thuộc tính

Cho tập PTH F trên tập thuộc tính U và một tập con các thuộc tính X trong U

Để xác định bao đóng X + của tập thuộc tính X ta xây dựng dãy bao nhau

X(0) X(1) …  X(i) như sau

1 (

i

X L F R L

i i

R X

Trang 25

Thuật toán trên có độ phức tạp O(mn 2

), trong đó n là số lượng thuộc tính trong U,

m là số lượng PTH trong tập F

Quy ước giản lược

Ta thường viết XY thay vì viết XYF + hoặc F╞ XY

Bài toán thành viên

Cho tập thuộc tính U, một tập các PTH F trên U và một PTH f: XY trên U Hỏi rằng f F + (f có phải là thành viên của F + ) hay không ?

Output: - True, nếu f F + ;

- False, trong trường hợp phủ định

Trang 26

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Ngoài ra, sử dụng ba tính chất (C1), (C2) và (C3) nói trên ta dễ dàng chứng minh các tính chất (C4)-(C8) sau đây:

Nếu F G ta nói G là một phủ của F

Ký hiệu F ≢ G có nghĩa F và G không tương đương

Cho tập PTH F trên tập thuộc tính U và X là tập con của U, ta dùng ký hiệu

X F + trong trường hợp cần chỉ rõ bao đóng của tập thuộc tính X lấy theo tập PTH F

2 G có dạng thu gọn tự nhiên theo nghĩa sau:

2a Hai vế trái và phải của mọi PTH trong G rời nhau (không giao

nhau.)

f G: LS(f) RS(f) =

Trang 27

2b Các vế trái của mọi PTH trong G khác nhau đôi một

Nếu dùng kỹ thuật chỉ dẫn để tổ chức truy nhập trực tiếp tới các thuộc tính và

PTH thì thuật toán thu gọn tự nhiên Natural_Reduced đòi hỏi độ phức tạp tính toán

là O(mn) trong đó m là số lượng PTH trong tập F, n là số lượng thuộc tính trong U

Để ý rằng mn là chiều dài dữ liệu vào của thuật toán, do đó O(mn) chính là độ phức

tạp tuyến tính theo chiều dài dữ liệu vào

Ta dễ dàng chứng minh tính đúng của mệnh đề sau,

Trang 28

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

(ii) G có dạng không dư theo nghĩa sau: gG: G \{g} ≢ G

Thuật toán tìm phủ không dư của tập PTH

Trang 30

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Thuật toán tìm phủ thu gọn phải của tập PTH

Để ý rằng, AR: R\A R, nên (g: LRG,AR): G╞ LR\A

do đó ta chỉ cần kiểm tra G\{LR}{LR\A}╞ LA

Trang 31

Cho hai tập PTH F và G trên tập thuộc tính U G được gọi là phủ thu gọn của

F nếu G đồng thời là phủ thu gọn trái và thu gọn phải của F.

Thuật toán tìm phủ thu gọn của tập PTH

(i) G là một phủ thu gọn của F,

(ii) Vế phải của mọi PTH trong G chỉ chứa một thuộc tính

Thuật toán tìm phủ tối tiểu của tập PTH

Trang 32

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

1.2.6 Khóa của lược đồ quan hệ

Khóa của lược đồ quan hệ

Nếu K thoả điều kiện (i) (hoặc (i')) thì K được gọi là một siêu khoá

Thuộc tính A U được gọi là thuộc tính khoá (nguyên thuỷ hoặc cơ sở) nếu A

có trong một khoá nào đấy A được gọi là thuộc tính không khoá (phi nguyên thuỷ hoặc thứ cấp) nếu A không có trong bất kỳ khoá nào

Cho LĐQH a = (U, F) Ta ký hiệu U K là tập các thuộc tính khóa của a và U 0

tập các thuộc tính không khóa của a Dễ thấy U K |U o là một phân hoạch của U

C h ú ý

Trong một số tàì liệu thuật ngữ khoá được dùng theo nghĩa siêu khoá và thuật ngữ khoá tối tiểu được dùng theo nghĩa khoá

Ngày đăng: 15/03/2013, 11:26

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] DEMETROVICS J., NGUYEN XUAN HUY (1991), “Closed Sets and Translations of Relation Schemes”, Computers Math. Applic., 21(1), 13-23 Sách, tạp chí
Tiêu đề: Closed Sets and Translations of Relation Schemes”, "Computers Math. Applic
Tác giả: DEMETROVICS J., NGUYEN XUAN HUY
Năm: 1991
[2] DEMETROVICS J., THI V.D. (1996), “Some Results about Normal Forms for Functional Dependency in the Relational Datamodel”, Discrete Applied Mathematics, 69, 61-74 Sách, tạp chí
Tiêu đề: Some Results about Normal Forms for Functional Dependency in the Relational Datamodel”, "Discrete Applied Mathematics
Tác giả: DEMETROVICS J., THI V.D
Năm: 1996
[3] LE DUC MINH, VU NGOC LOAN, and NGUYEN XUAN HUY (2005), “Some Results Concerning Covers in the Class of Multivalued Positive Boolean Dependencies”, in Book: The Mathematical Foundation of Informatics, Eds. by Do Long Van and M. Ito, Proceeding of the Conference, World Scientific, 119-130 Sách, tạp chí
Tiêu đề: Some Results Concerning Covers in the Class of Multivalued Positive Boolean Dependencies”, in Book: "The Mathematical Foundation of Informatics, Eds. " by Do Long Van and M. Ito, "Proceeding of the Conference, World Scientific
Tác giả: LE DUC MINH, VU NGOC LOAN, and NGUYEN XUAN HUY
Năm: 2005
[4] CLAUDIO L. LUCCHESI, SYLVIA L. OSBORN (1978), “ Candidate Keys for Relations”, Journal of Computer and System Sciences, 17 (2), 270-279 Sách, tạp chí
Tiêu đề: Candidate Keys for Relations”," Journal of Computer and System Sciences
Tác giả: CLAUDIO L. LUCCHESI, SYLVIA L. OSBORN
Năm: 1978
[5] NGUYỄN XUÂN HUY, ĐOÀN VĂN BAN, ĐÀM GIA MẠNH, NGUYỄN THẾ DŨNG (2001), “Về mối liên hệ giữa suy diễn phụ thuộc hàm và suy diễn logic”, Tạp chí Tin học và điều khiển học, 17 (4), 11-16 Sách, tạp chí
Tiêu đề: Về mối liên hệ giữa suy diễn phụ thuộc hàm và suy diễn logic”, "Tạp chí Tin học và điều khiển học
Tác giả: NGUYỄN XUÂN HUY, ĐOÀN VĂN BAN, ĐÀM GIA MẠNH, NGUYỄN THẾ DŨNG
Năm: 2001
[6] NGUYỄN XUÂN HUY, LÊ THỊ MỸ HẠNH (2005), “Giàn giao của ánh xạ đóng”, Chuyên san Các công trình nghiên cứu - triển khai Viễn thông và Công nghệ Thông tin, 14 (4), 35-42 Sách, tạp chí
Tiêu đề: Giàn giao của ánh xạ đóng”, "Chuyên san Các công trình nghiên cứu - triển khai Viễn thông và Công nghệ Thông tin
Tác giả: NGUYỄN XUÂN HUY, LÊ THỊ MỸ HẠNH
Năm: 2005
[7] NGUYỄN XUÂN HUY (2006), Các phụ thuộc logic trong cơ sở dữ liệu, Viện Khoa học và Công nghệ Việt Nam, NXB Thống Kê, Hà Nội Sách, tạp chí
Tiêu đề: Các phụ thuộc logic trong cơ sở dữ liệu
Tác giả: NGUYỄN XUÂN HUY
Nhà XB: NXB Thống Kê
Năm: 2006
[8] VŨ ĐỨC THI (1997), Cơ sở dữ liệu: Kiến thức và thực hành, NXB Thống Kê, Hà Nội Sách, tạp chí
Tiêu đề: Cơ sở dữ liệu: Kiến thức và thực hành
Tác giả: VŨ ĐỨC THI
Nhà XB: NXB Thống Kê
Năm: 1997

HÌNH ẢNH LIÊN QUAN

1. Khởi trị: Lập bảng T với các cột là các thuộc tính tron gU và k dòng, mỗi dòng ứng với một thành phần của X i trong  : Dòng i chứa các ký hiệu phân biệt  (KHPB) a j  ứng với các thuộc tính Aj trong Xi  và các ký hiệu không phân biệt  (KHKPB) b ij   ứn - luận văn thạc sỹ công nghệ thông tin
1. Khởi trị: Lập bảng T với các cột là các thuộc tính tron gU và k dòng, mỗi dòng ứng với một thành phần của X i trong : Dòng i chứa các ký hiệu phân biệt (KHPB) a j ứng với các thuộc tính Aj trong Xi và các ký hiệu không phân biệt (KHKPB) b ij ứn (Trang 37)
b) Dùng kỹ thuật bảng để kiểm tra tính kết nối không tổn thất của phép tách trong - luận văn thạc sỹ công nghệ thông tin
b Dùng kỹ thuật bảng để kiểm tra tính kết nối không tổn thất của phép tách trong (Trang 38)
Sơ đồ tương quan giữa các dạng chuẩn - luận văn thạc sỹ công nghệ thông tin
Sơ đồ t ương quan giữa các dạng chuẩn (Trang 39)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w