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

Một số phụ thuộc dữ liệu trong cơ sở dữ liệu dạng khối

92 777 1
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 92
Dung lượng 1,12 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM VIỆN CÔNG NGHỆ THÔNG TIN TRỊNH ĐÌNH VINH MỘT SỐ PHỤ THUỘC DỮ LIỆU TRONG CƠ SỞ DỮ LIỆU DẠNG KHỐI Chuyên ngành: BẢO ĐẢM TOÁN

Trang 1

TRỊNH ĐÌNH VINH

MỘT SỐ PHỤ THUỘC DỮ LIỆU TRONG CƠ SỞ DỮ LIỆU DẠNG KHỐI

LUẬN ÁN TIẾN SĨ TOÁN HỌC

HÀ NỘI - 2011

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN KHOA HỌC

VÀ CÔNG NGHỆ VIỆT NAM

VIỆN CÔNG NGHỆ THÔNG TIN

TRỊNH ĐÌNH VINH

MỘT SỐ PHỤ THUỘC DỮ LIỆU TRONG CƠ SỞ DỮ LIỆU DẠNG KHỐI

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 GS.TS Vũ Đức Thi

2 PGS.TS Nguyễn Kim Anh

HÀ NỘI – 2011

Trang 3

Lời cảm ơn

để hoàn thành luận án này, tôi đã nhận được sự giúp đỡ rất tận tình của các thầy cô hướng dẫn khoa học, các thầy cô trong Viện CNTT và trường

ĐHSP Hà Nội 2 Tôi xin cảm ơn các thầy cô trong Viện CNTT và trường

ĐHSP Hà Nội 2 đã tạo điều kiện học tập, nghiên cứu, giúp đỡ tôi rất nhiều trong quá trình làm luận án Đặc biệt tôi xin cảm ơn thầy GS TS Vũ Đức Thi, cô PGS.TS Nguyễn Kim Anh đã tận tình hướng dẫn, chỉ bảo cho tôi trong toàn bộ quá trình học tập, nghiên cứu đề tài và giúp tôi hoàn thành bản luận án này

Trịnh Đình Vinh

Trang 4

Lêi cam ®oan

T«i xin cam ®oan ®©y lµ c«ng tr×nh nghiªn cøu cña t«i d−íi sù h−íng dÉn khoa häc cña c¸c thÇy c« GS.TS Vò §øc Thi vµ PGS TS NguyÔn Kim Anh

C¸c sè liÖu, kÕt qu¶ nªu trong luËn ¸n lµ trung thùc vµ ch−a tõng ®−îc

ai c«ng bè trong bÊt k× c«ng tr×nh nµo kh¸c

T¸c gi¶ luËn ¸n

TrÞnh §×nh Vinh

Trang 5

mục lục

Trang

Danh mục các ký hiệu và chữ viết tắt ………7

Danh mục bảng biểu và hình vẽ ……….8

Lời mở đầu ……… 9

Chương 1: Mô hình cơ sở dữ liệu quan hệ ……… 13

1.1 Các khái niệm cơ bản ……… 13

1.1.1 Thuộc tính và miền thuộc tính ………13

1.1.2 Quan hệ, lược đồ quan hệ ……… 13

1.1.3 Khoá của quan hệ ……… 14

1.2 Các phép toán đại số quan hệ ……… 15

1.2.1 Phép hợp ……….15

1.2.2 Phép giao ……….15

1.2.3 Phép trừ ……… 16

1.2.4 Tích đề các ……… 16

1.2.5 Phép chiếu ………17

1.2.6 Phép chọn ………17

1.2.7 Phép kết nối ……… 18

1.2.8 Phép chia ……… 20

1.3 Phụ thuộc hàm ……… 20

1.3.1 Các tính chất của phụ thuộc hàm ………21

1.3.2 Hệ tiên đề Armstrong và phép suy dẫn … ……….21

1.4 Bao đóng ……… 22

1.4.1 Bao đóng của tập phụ thuộc hàm ………22

1.4.2 Bao đóng của tập thuộc tính ………22 1.4.3 Bài toán thành viên và thuật toán tìm

Trang 6

bao đóng của tập thuộc tính ………22

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

1.6 Phủ của tập phụ thuộc hàm ……… 26

1.7 Phủ tối thiểu của tập phụ thuộc hàm ………26

1.7.1 Phụ thuộc hàm có vế trái dư thừa ………26

1.7.2 Tập phụ thuộc hàm có vế phải gồm 1 thuộc tính ….27 1.7.3 Tập phụ thuộc hàm không dư thừa ……….27

1.7.4 Tập phụ thuộc hàm tối thiểu ………28

(Phủ tối thiểu của tập phụ thuộc hàm) 1.8 Các dạng chuẩn của lược đồ quan hệ ………28

1.9 Phụ thuộc đa trị ………30

1.9.1 Định nghĩa phụ thuộc đa trị ………30

1.9.2 Các tính chất của phụ thuộc đa trị ……… 31

1.10 Kết luận chương 1 ……… 32

Chương 2 : Mô hình cơ sở dữ liệu dạng khối ……… 33

2.1 Khối, lược đồ khối ……… 33

2.2 Lát cắt 34

2.3 Khoá của khối ……….35

2.4 Đại số quan hệ trên khối ……… 37

2.4.1 Phép hợp ……… 37

2.4.2 Phép giao ……….37

2.4.3 Phép trừ ……… 37

2.4.4 Tích Đề Các ………38

2.4.5 Tích Đề Các theo tập chỉ số ……….38

2.4.6 Phép chiếu ………38

2.4.7 Phép chọn ………39

2.4.8 Phép kết nối ……….39

Trang 7

2.4.9 Phép chia ……….40

2.5 Phụ thuộc hàm ………41

2.6 Bao đóng của tập thuộc tính chỉ số ……… 43

2.7 Khoá của lược đồ khối R đối với

tập các phụ thuộc hàm F trên R ………45

2 8 Dạng chuẩn của khối ……… 46

2.9 Phủ của tập phụ thuộc hàm ……… 48

2.10 Kết luận chương 2 ……… 50

Chương 3: phụ thuộc đa trị, phụ thuộc đa trị xấp xỉ và α -phụ thuộc hàm trong mô hình dữ liệu dạng khối ……51

3.1 Phụ thuộc đa trị trong mô hình dữ liệu dạng khối ………….51

3.2 Các tính chất của Phụ thuộc đa trị ……….53

3.3 Phụ thuộc đa trị xấp xỉ trong mô hình dữ liệu dạng khối … 61

3.4 Các tính chất của phụ thuộc đa trị xấp xỉ ……… 63

3.5 α-Phụ thuộc hàm và α-bao đóng trong mô hình dữ liệu dạng khối ……….71

3.5.1 Khái niệm xấp xỉ mức α ……….71

3.5.2 α-phụ thuộc hàm và α-bao đóng ……… 73

3.6 Kết luận chương 3 ……….84

Phần kết luận ……… 85

Danh mục công trình công bố của tác giả ……… 87

Danh mục tài liệu tham khảo ……… 88

Trang 8

danh mục các ký hiệu và các chữ viết tắt

Trong luận án này dùng thống nhất các kí hiệu và các chữ viết tắt sau:

Kí hiệu ý nghĩa

A, B, C thuộc tính

X, Y, Z tập thuộc tính

XY X∪Y (hợp của 2 tập thuộc tính X và Y)

ABC [A, B, C] (tập thuộc tính gồm 3 phần tử A, B, C)

Dom(A) miền giá trị của thuộc tính A

r hoặc r(R) khối r trên tập R

x(i)= (x, Ai) các thuộc tính chỉ số của l−ợc đồ khối (x∈id, i= 1 n)

id(i) = {x(i)⎜x∈id } tập các thuộc tính chỉ số của l−ợc đồ khối

r số phần tử của khối r

r ' số phần tử của khối con r’ của khối r

Trang 9

danh môc c¸c b¶ng biÓu vµ c¸c h×nh vÏ

B¶ng biÓu ý nghÜa

B¶ng 1.1 BiÓu diÔn quan hÖ r……… 13

B¶ng 1.2 BiÓu diÔn c¸c quan hÖ r, s vµ r x s………16

B¶ng 3.1 Quan hÖ gÇn nhau trªn miÒn gi¸ trÞ cña A1……… 74

H×nh vÏ ý nghÜa H×nh 2.1 BiÓu diÔn khèi nh©n viªn (NV(R))… ………34

H×nh 2.2 BiÓu diÔn khèi Canbo……… 41

H×nh 3.1 BiÓu diÔn khèi Sinhviªn1……… 52

H×nh 3.2 BiÓu diÔn khèi Sinhviªn2……… 62

H×nh 3.3 BiÓu diÔn khèi Sinhviªn3……… 74

Trang 10

Mở đầu

Để xây dựng được một hệ thống cơ sở dữ liệu tốt, người ta thường sử dụng các mô hình dữ liệu thích hợp Mỗi mô hình dữ liệu là một hệ hình thức toán học gồm có hai phần:

1 Một hệ thống kí hiệu để mô tả dữ liệu

2 Một tập hợp các phép toán thao tác trên dữ liệu đó

Từ trước đến nay đã có một số loại mô hình được sử dụng trong các hệ thống cơ sở dữ liệu như: mô hình thực thể - liên kết, mô hình mạng, mô hình phân cấp, mô hình hướng đối tượng, mô hình dữ liệu datalog và mô hình quan

hệ Trong số các mô hình này thì mô hình quan hệ là một trong những mô hình được nhiều nhà khoa học quan tâm nghiên cứu, khai thác ứng dụng vì nó

được xây dựng trên một cơ sở toán học chặt chẽ [8], [15], [16], [20], [23], [25] Tuy nhiên, do các quan hệ có cấu trúc phẳng (tuyến tính) nên mô hình này sẽ rất khó khăn khi biểu diễn các dữ liệu có tính chất động (phi tuyến)

Trong những năm gần đây, việc nghiên cứu nhằm mở rộng mô hình quan hệ được nhiều nhà khoa học quan tâm Theo hướng nghiên cứu này đã có một số hướng mở rộng mô hình quan hệ được đề xuất nghiên cứu như: mô hình dữ liệu đa chiều [2], [19], [26], [31]; khối dữ liệu [17], [27], [28], [33]; kho dữ liệu [22], [29], [32]; mô hình dữ liệu dạng khối [3], [4], [5], [6], [13],

… Trong đó chúng tôi thấy ở mô hình dữ liệu dạng khối, các khối là khái niệm cơ bản được mở rộng từ các quan hệ trong mô hình quan hệ, các khối này có thể biểu diễn các dữ liệu có tính chất động (biểu diễn các dữ liệu có thuộc tính thay đổi theo thời gian)

Ví dụ: khi chúng ta dùng các quan hệ trong mô hình quan hệ để tạo cơ

sở dữ liệu trong chương trình quản lý lương của các cán bộ trong một cơ quan thì mỗi khi cập nhật lương mới cho cán bộ được tăng lương nó sẽ làm mất dữ liệu lương cũ trước đó Do đó, khi đến kỳ hạn xét tăng lương cho các cán bộ

Trang 11

thì việc tìm kiếm các cán bộ đến kỳ hạn tăng lương cũng gặp không ít khó khăn (bởi vì sẽ phải tìm kiếm các cán bộ đã được tăng lương trong thời gian 2 hoặc 3 năm trước tuỳ theo cán bộ đó ở ngạch lương nào) Tuy nhiên, nếu quản

lý lương bằng khối trong mô hình khối thì nhờ việc sử dụng trục id (cột chỉ số) làm trục thời gian để lưu trữ dữ liệu lương theo từng thời điểm thì chúng ta sẽ

dễ dàng đưa ra các cán bộ đến kỳ hạn tăng lương trong cơ quan đó

Một ví dụ khác nữa là khi muốn mô tả các dữ liệu của con tàu khi nó di chuyển vào bến cảng (vận tốc, khoảng cách so với bờ, độ sâu,…) thì nếu ta dùng mô hình quan hệ sẽ rất khó khăn trong việc mô tả các dữ liệu trên của con tàu khi nó di chuyển dần vào cảng Nhưng nếu chúng ta dùng khối trong mô hình khối sẽ dễ dàng biểu diễn được các dữ liệu trên của con tàu trong quá trình chuyển động bằng cách sử dụng trục id làm trục thời gian, mỗi bộ giá trị của các thuộc tính chỉ số sẽ biểu diễn dữ liệu của con tàu tại một thời điểm nhất định khi con tàu di chuyển vào bờ

Tuy nhiên, trong mô hình khối này cũng còn nhiều loại phụ thuộc dữ liệu chưa được nghiên cứu Vì vậy:

Mục tiêu của luận án là nghiên cứu các phụ thuộc dữ liệu trong cơ sở

dữ liệu, cụ thể là tập trung vào nghiên cứu các phụ thuộc dữ liệu trong mô hình dữ liệu dạng khối nhằm để góp phần bổ sung thêm vào lý thuyết thiết kế mô hình dữ liệu dạng khối

Luận án bao gồm: Lời mở đầu, ba chương nội dung, phần kết luận,

danh mục công trình công bố và tài liệu tham khảo

Chương 1 trình bày các khái niệm cơ bản nhất về mô hình quan hệ

Trình bày các phép toán đại số trên mô hình quan hệ, các vấn đề về phụ thuộc hàm, khoá, bao đóng, phủ của tập phụ thuộc hàm cũng được giới thiệu cùng các tính chất của chúng Phần cuối chương trình bày khái niệm về phụ thuộc đa trị trong mô hình quan hệ và các tính chất của chúng [1], [7], [8],

Trang 12

Các kết quả nghiên cứu của luận án được trình bày trong phần cuối của chương 2 và toàn bộ chương 3

Chương 2 giới thiệu tổng quan về mô hình khối: định nghĩa khối, lược

đồ khối, lát cắt, phụ thuộc hàm, các dạng chuẩn trong khối Các phép toán đại

số trên khối, khoá của khối, lược đồ khối cũng được giới thiệu [3], [4], [5], [6], [13]

Cuối chương 2 chúng tôi xây dựng các khái niệm mới về: phủ, phủ

không dư thừa, phủ tối thiểu của tập các phụ thuộc hàm trên lược đồ khối; các tính chất về phủ, phủ tối thiểu của tập các phụ thuộc hàm; đưa ra điều kiện cần và đủ của một phủ tối thiểu trong mô hình dạng khối [12]

Chương 3 trình bày khái niệm mới về phụ thuộc đa trị trong mô hình

dữ liệu dạng khối; phát biểu và chứng minh các tính chất của phụ thuộc đa trị trong mô hình dữ liệu khối; đưa ra tiêu chuẩn cần và đủ của một phụ thuộc đa trị trong mô hình này [14]

Khái niệm mới tiếp theo được trình bày trong chương này là khái niệm phụ thuộc đa trị xấp xỉ mức k giữa các thuộc tính chỉ số của một khối trong mô hình dữ liệu dạng khối Trên cơ sở đó, các tính chất của phụ thuộc đa trị xấp xỉ, mối liên hệ giữa phụ thuộc đa trị xấp xỉ trên các lát cắt với các phụ thuộc đa trị xấp xỉ trên khối đã được phát biểu và chứng minh [10]

Chương này cũng trình bày thêm một khái niệm mới nữa về α-phụ thuộc hàm; phát biểu và chứng minh các tính chất của nó trong mô hình dữ liệu dạng khối, điều kiện cần và đủ của α-phụ thuộc hàm theo quan điểm tập thô cũng được phát biểu và chứng minh [9], [11]

Ngoài ra ở chương này còn phát biểu và chứng minh điều kiện cần và

đủ của một α-phụ thuộc hàm từ X vào Y khi mà X, Y có dạng riêng; xây dựng khái niệm mới về α-bao đóng trong mô hình cơ sở dữ liệu dạng khối, chứng minh điều kiện cần và đủ của tập α-bao đóng đối với tập các phụ thuộc

Trang 13

hàm Fαh; xây dựng thuật toán tính α-bao đóng cho các tập thuộc tính chỉ số

đối với Fαh [11]

Cuối cùng, phần kết luận nêu những kết quả luận án đã đạt được và hướng phát triển tiếp theo của luận án

Trang 14

- Thuộc tính là đặc trưng của các quan hệ

- Tập tất cả các giá trị có thể có của thuộc tính Ai gọi là miền giá trị của

thuộc tính đó, ký hiệu: Dom(Ai) hay viết tắt là

i

A

D

Ví dụ 1.1: Nhanvien(MaNV, Hoten, NgSinh, Đchi)

Dom(MaNV) = {char(4)} ; Dom(Hoten) = {char(3)} ;

Dom(NgSinh) = {date} ; Dom(Đchi) = {‘HN’, ‘HP’, ‘VP’, …}

1.1.2 Quan hệ, lược đồ quan hệ

Định nghĩa 1.2 [7], [8]

Cho U= {A1, A2, …, An} là một tập hữu hạn không rỗng các thuộc tính

Mỗi thuộc tính Ai (i=1,2, …, n) có miền giá trị là DAi Khi đó r là một tập

Ai

D

∪các bộ {h

A Ui

1, h2, …, hm} được gọi là quan hệ trên U với hj (j=1, 2, …, m) là một

hàm: hj: U → sao cho hj(Ai) ∈ (i=1, 2, …, n)

i

A

D

Ta có thể xem một quan hệ như một bảng, trong đó mỗi hàng (phần tử)

là một bộ và mỗi cột tương ứng với một thành phần gọi là thuộc tính

Biểu diễn quan hệ r thành bảng như sau:

Trang 15

Ví dụ 1.2:

Nhânviên(MNV HOTEN NS DC PLV)

No1 A 2/04/76 HN P1 No2 A 4/05/70 HN P1 No3 B 2/04/76 HP P2 Trong đó các thuộc tính là MNV: mã nhân viên; HOTEN: họ tên; NS: ngày sinh; DC: địa chỉ; PLV: phòng làm việc

Bộ giá trị: (No1, A, 2/04/76, HN, P1) là một bộ

Nếu có một bộ t = (d1, d2, d3, , dm) ∈ r, r xác định trên U, X ⊆ U thì t(X) (hoặc t.X) đ−ợc gọi là giá trị của tập thuộc tính X trên bộ t

Tập thuộc tính K’ đ−ợc gọi là siêu khoá nếu K’ ⊇ K và K là một khoá của quan hệ r

Ví dụ 1.3: Nhânviên(MNV HOTEN NS DC PLV)

No1 A 2/04/76 HN P1 No2 A 4/05/70 HN P1 No3 B 2/04/76 HP P2

Ta có thuộc tính MNV là khoá của quan hệ

Trang 16

1.2 Các phép toán đại số quan hệ

x Phép toán tập hợp: hợp, giao, trừ, tích Đề-các

x Phép toán quan hệ: chiếu, chọn, kết nối, chia

Định nghĩa 1.5 [1], [7],[16]

Hai quan hệ r và s đ−ợc gọi là khả hợp nếu nh− hai quan hệ này xác

định trên cùng tập thuộc tính và các thuộc tính cùng tên có cùng miền giá trị

Trang 17

FOX FOXPRO

B¶ng 1.2: BiÓu diÔn c¸c quan hÖ r, s vµ quan hÖ r s

Trang 18

1.2.5 Phép chiếu

Cho r là một quan hệ n ngôi xác định trên tập thuộc tính U={A1, A2, ,

An}, X là tập con của U Phép chiếu của quan hệ r trên tập thuộc tính X, kí hiệu là ΠX(r), là tập các bộ của r xác định trên tập thuộc tính X Ta có:

Trang 19

- Biểu thức chọn F đ−ợc định nghĩa là một tổ hợp logic của các toán hạng, mỗi toán hạng là một phép so sánh đơn giản giữa hai biến là hai thuộc tính hoặc giữa một biến là một thuộc tính và một giá trị hằng Biểu thức chọn

F cho giá trị đúng hoặc sai đối với mỗi bộ đã cho của quan hệ khi kiểm tra riêng bộ đó

- Các phép toán so sánh trong biểu thức F: >, <, =, ≥, ≠, ≤

- Các phép toán logic trong biểu thức F: ∧ (và), ∨ (hoặc), ơ (phủ định) Cho r là một quan hệ và F là một biểu thức logic trên các thuộc tính của

r Phép chọn trên quan hệ r với biểu thức chọn F, kí hiệu là , là tập tất cả các bộ của r thoả mãn F Ta có:

F(r)δ

Giả sử cho hai bộ u=(a1, a2, , an) và v=(b1, b2, , bm) Phép ghép bộ u với bộ v, kí hiệu (u,v), đ−ợc định nghĩa là: (u,v)=(a1, a2, , an, b1, b2, , bm)

Phép kết nối hai quan hệ thực chất là phép ghép các cặp bộ của hai quan

hệ thoả mãn một điều kiện nào đó trên chúng Điều kiện đó đ−ợc gọi là điều kiện kết nối hay biểu thức kết nối

Trang 20

Biểu thức kết nối được định nghĩa là phép hội của các toán hạng, mỗi toán hạng là một phép so sánh đơn giản giữa một thuộc tính của quan hệ r và một thuộc tính của quan hệ s

Phép kết nối của quan hệ r với quan hệ s với biểu thức kết nối F được

định nghĩa như sau: r s = {t (u,v) u r v s F(t= ∈ ∧ ∈ ∧ ) = đúng}

Tất nhiên ở đây cần giả thiết rằng các phép so sánh của các cặp thuộc tính thuộc hai quan hệ là có nghĩa, hay mỗi giá trị của thuộc tính này có thể so sánh được với mỗi giá trị của thuộc tính kia

F

Trong trường hợp phép so sánh là “=”, chúng ta gọi phép kết nối đó là phép kết nối bằng Trường phép hợp kết nối bằng trên các thuộc tính cùng tên của hai quan hệ và sau khi kết nối một trong hai thuộc tính của phép so sánh

“=” được loại bỏ thông qua phép chiếu thì phép kết nối này được gọi là kết nối

tự nhiên và sử dụng kí hiệu “ * ” Phép kết nối tự nhiên của hai quan hệ có thể

được định nghĩa như sau: r(U) * s(V) = {t.(U∪V) ⎜t.U ∈r t.V ∧ ∈s}

Trang 21

1.2.8 Phép chia

Cho r là một quan hệ n ngôi xác định trên tập thuộc tính U và s là một quan hệ m ngôi xác định trên tập thuộc tính V với n > m và s ≠ ỉ, có nghĩa là lực lượng của s là khác 0 hay s có ít nhất một bộ Để đơn giản chúng ta giả thiết V ⊂ U Phép chia quan hệ r cho quan hệ s, kí hiệu là r ữ s, là tập tất cả các bộ t sao cho với mọi bộ v ∈ s thì khi ghép bộ t với bộ v ta được một bộ thuộc r Ta có: r ữ s = {t ∀ ∈v s ⇒(t,v) r∈ }

mà t1(X) = t2(X) thì t1(Y) = t2(Y)

Khái niệm phụ thuộc hàm mô tả một loại ràng buộc (phụ thuộc dữ liệu) xảy ra tự nhiên nhất giữa tập các thuộc tính Các ràng buộc này chính là nguyên nhân gây nên sự dư thừa dữ liệu và các dị thường xảy ra khi cập nhật

Trang 22

dữ liệu Người ta sử dụng các phụ thuộc hàm để chuẩn hoá lược đồ quan hệ

về dạng chuẩn 3 hoặc dạng chuẩn Boye-Codd

1.3.1 Các tính chất của phụ thuộc hàm

Cho lược đồ quan hệ R xác định trên tập thuộc tính U = { }, cho X, Y, Z, W ⊂ U thì ta có một số tính chất cơ bản của lớp các phụ thuộc hàm như sau:

1.3.2 Hệ tiên đề Armstrong và phép suy dẫn

Các tính chất 1, 2, 3 của phụ thuộc hàm gọi là hệ tiên đề Armstrong của lớp các phụ thuộc hàm

• Tính phản xạ: nếu Y ⊆ X thì X → Y

• Tính mở rộng hai vế: nếu X → Y thì XZ → YZ

• Tính bắc cầu: nếu X → Y và Y → Z thì X → Z

Trang 23

Phụ thuộc hàm đ−ợc suy diễn logic từ tập phụ thuộc hàm F

Cho l−ợc đồ quan hệ R xác định trên tập thuộc tính U, F là tập các phụ thuộc hàm trên R và X → Y là một phụ thuộc hàm, X,Y ⊆U Chúng ta nói rằng X → Y đ−ợc suy diễn logic từ F nếu với mỗi quan hệ r xác định trên R thỏa các phụ thuộc hàm trong F thì cũng thỏa X → Y Kí hiệu F |= X → Y

1.4 Bao đóng

1.4.1 Bao đóng của tập phụ thuộc hàm

Định nghĩa 1.7 [7], [15], [16]

Cho tập phụ thuộc hàm F, bao đóng của tập phụ thuộc hàm F kí hiệu F+

là tập lớn nhất chứa các phụ thuộc hàm đ−ợc suy diễn từ các phụ thuộc hàm F Vậy F+ = {f F = f }

Các tính chất:

• Tính phản xạ: với mọi tập phụ thuộc hàm F ta luôn có F ⊆ F+

• Tính đơn điệu: nếu F ⊆ G thì F+ ⊆ G+

• Tính luỹ đẳng: với mọi tập phụ thuộc hàm F ta luôn có F++ = F+

1.4.2 Bao đóng của tập thuộc tính đối với tập các phụ thuộc hàm

Định nghĩa 1.8 [7], [15], [16]

Cho l−ợc đồ quan hệ R xác định trên tập thuộc tính U, cho X ⊆ U, tập các phụ thuộc hàm F Bao đóng của tập thuộc tính X đối với F kí hiệu X+ là tập tất cả các thuộc tính A mà X → A đ−ợc suy diễn từ F Ta có:

X+ = {A ⎜X → A ∈ F+}

Đôi khi ta kí hiệu XF+ để chỉ lấy bao đóng của X theo tập F

1.4.3 Bài toán thành viên và thuật toán tìm bao đóng của tập thuộc tính

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

Nói rằng X → Y là thành viên của F nếu X → Y ∈ F+

Trang 24

Một vấn đề quan trọng khi nghiên cứu lý thuyết cơ sở dữ liệu là khi cho trước tập các phụ thuộc hàm F và một phụ thuộc hàm X → Y, làm thế nào để biết X → Y ∈ F+ hay không, bài toán này được gọi là bài toán thành viên

Để trả lời câu hỏi này ta có thể tính F+ rồi xác định xem X → Y có thuộc F+ hay không Việc tính F+ là một công việc đòi hỏi thời gian và công sức Tuy nhiên, thay vì tính F+ chúng ta có thể dùng tính chất của bao đóng của tập thuộc tính để xác định X → Y có là thành viên của F hay không

Đó là: X → Y ∈ F+ ⇔ Y ⊆ X+ Ta chứng minh điều này

Giả sử Y= A1…An với A1…An là các thuộc tính và Y ⊆ X+ Từ định nghĩa X+ ta có X → Ai, áp dụng hệ tiên đề Amstrong cho mỗi i suy ra X → Y nhờ luật hợp

Ngược lại, giả sử ta có X → Y, áp dụng hệ tiên đề Amstrong cho mỗi i

ta có X → Ai , Ai ∈Y nhờ luật tách, suy ra Ai ∈ X+ Từ đó, suy ra Y ⊆ X+ Vậy X → Y ∈ F+ ⇔ Y ⊆ X+

Bước 1: Tìm bao đóng của tập thuộc tính X: XF+

Bước 2: Kiểm tra Y ⊆ X+ nếu đúng thì X → Y ∈ F+,

nếu sai thì X → Y ∉ F+

Bước 3: Kết thúc thuật toán

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

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

Dữ liệu đầu vào: U, F, X ⊆ U

Trang 25

Ra: X+ là bao đóng của X đối với F

Phương pháp:

Tính liên tiếp các tập thuộc tính X0, X1, X2, theo các bước sau:

Bước 0: đặt X0 = X

Bước i: Tính Xi từ Xi-1 như sau:

Xi = Xi-1∪{A} nếu tồn tại Y → Z ∈ F mà Y⊆ Xi-1, A∈ Z và A∉ Xi-1.

Xi-1 nếu ngược lại

Vì rằng X= X0 ⊆…⊆ Xi ⊆ …⊆U và U là hữu hạn cho nên sẽ tồn tại

một chỉ số i nào đó mà Xi = Xi-1 , khi đó X+ = Xi

Bước 1: X1 = X0 ∪ {D} vì ∃ A → D thoả mãn điều kiện

Bước 2: X2 = X1 ∪ {E} vì ∃ AB → DE thoả mãn điều kiện

Bước 3: X3 = X2 ∪ {H} vì ∃ E → H thoả mãn điều kiện

Cho lược đồ quan hệ R xác định trên tập thuộc tính U = { },

F là một tập phụ thuộc hàm xác định trên U, K ⊆ U, K được gọi là siêu khoá

1

A , , An

Trang 26

của lược đồ quan hệ R nếu phụ thuộc hàm K →U ∈ F+, nghĩa là tập thuộc tính

K là siêu khoá nếu K+ = U

Định nghĩa 1.10

Cho lược đồ quan hệ R xác định trên tập thuộc tính U = { }, F

là một tập phụ thuộc hàm xác định trên U, K ⊆ U, K được gọi là khoá của R nếu K thoả hai điều kiện:

khóa (hoặc thuộc tính thứ cấp) và kí hiệu là Fn

Một lược đồ quan hệ có thể có nhiều khóa và tập thuộc tính không khóa cũng có thể bằng rỗng

• Khoá là một khái niệm rất quan trọng trong việc thiết kế một cơ sở dữ liệu quan hệ Khoá thường được áp dụng trong việc tìm kiếm hay cập nhật dữ liệu trong các cơ sở dữ liệu quan hệ

Thuật toán tìm khóa của lược đồ quan hệ R

Bước i : Ki = (Ki-1 - {Ai}) Nếu (Ki-1 - {Ai})+ = U với Ai ∈ Ki-1

Ki-1 nếu ngược lại

Kết thúc khi K = Kn

Nếu muốn tìm các khóa khác (nếu có) của lược đồ quan hệ, ta có thể thay đổi thứ tự loại bỏ các phần tử của K0

Trang 27

1.6 Phủ của tập phụ thuộc hàm

Định nghĩa 1.11 [7], [16]

Cho hai tập phụ thuộc hàm F và G, nói rằng F là phủ của G hay G là phủ của F hay F và G tương đương với nhau, kí hiệu F G nếu như ta có: F

Nếu cả hai bước trên đều đúng thì F ≈ G

1.7 Phủ tối thiểu của tập phụ thuộc hàm

1.7.1 Phụ thuộc hàm có vế trái dư thừa

Cho lược đồ quan hệ R xác định trên tập thuộc tính U, F là tập các phụ thuộc hàm, Z→ Y∈ F Nói rằng phụ thuộc hàm Z → Y có vế trái dư thừa (phụ thuộc không đầy đủ) nếu có một A∈Z sao cho:

F ≈ F- {Z → Y} ∪ {(Z - A) → Y}

Ngược lại Z → Y là phụ thuộc hàm có vế trái không dư thừa hay Y phụ thuộc hàm đầy đủ vào Z hay Z → Y là phụ thuộc hàm đầy đủ

Chú ý: phụ thuộc hàm có vế trái chứa một thuộc tính là phụ thuộc hàm đầy đủ

Ví dụ 1.13: Cho tập phụ thuộc hàm F = {A → BC, B → C, AB → D} thì phụ

thuộc hàm AB→D có vế trái dư thừa B vì:

F ≈ F – {AB → D}∪{A → D}

Trang 28

≈ {A → BC, B → C, A → D}

Ta nói F là tập phụ thuộc hàm có vế trái không dư thừa nếu F không chứa

phụ thuộc hàm có vế trái dư thừa

Thuật toán 1.5 (loại khỏi F các phụ thuộc hàm có vế trái dư thừa)

Vào: Tập phụ thuộc hàm F, lược đồ quan hệ R xác định trên U

Ra: Tập F không chứa các phụ thuộc hàm có vế trái dư thừa

Phương pháp:

Bước 1: Lần lượt thực hiện bước 2 cho các phụ thuộc hàm X→Y của F

Bước 2: Với mọi tập con thật sự X’≠ ∅ của X

Nếu X'→Y∈ F+ thì thay X→Y trong F bằng X'→Y và thực hiện

lại bước 2

Ví dụ 1.14: Cho F = {A → BC, B → C, AB → D} Phụ thuộc hàm AB→D có

A+=ABCD ⇒ A→D∈F+, nên trong F ta thay AB→D bằng A→D ⇒

F ≈ {A → BC, B → C, A → D}

1.7.2 Tập phụ thuộc hàm có vế phải một thuộc tính

Mỗi tập phụ thuộc hàm F đều tương đương với một tập phụ thuộc hàm

G mà vế phải của các phụ thuộc hàm trong G chỉ gồm một thuộc tính

Ví dụ 1.15: Cho F = {A → BC, B → C, AB → D} ta suy ra

F ≈ {A → B, A → C , B → C, AB → D} = G

G được gọi là tập phụ thuộc hàm có vế phải một thuộc tính

1.7.3 Tập phụ thuộc hàm không dư thừa

Nói rằng F là tập phụ thuộc hàm không dư thừa nếu không tồn tại F’⊂ F

sao cho F’≈ F Ngược lại F là tập phụ thuộc hàm dư thừa

Ví dụ 1.16: Cho F = {A→BC, B→D, AB→D} thì F dư thừa vì

F ≈ F’= {A→BC, B→D}

Trang 29

Thuật toán 1.6 (loại khỏi F các phụ thuộc hàm dư thừa)

Vào: Tập phụ thuộc hàm F, lược đồ quan hệ R xác định trên U

Ra: Tập F không chứa các phụ thuộc hàm dư thừa

Phương pháp:

Bước 1: Lần lượt xét các phụ thuộc hàm X → Y của F

Bước 2: Nếu X → Y là thành viên của F - {X → Y} thì loại X → Y khỏi F Bước 3: Thực hiện bước 2 cho các phụ thuộc hàm tiếp theo của F

1.7.4 Tập phụ thuộc hàm tối thiểu (phủ tối thiểu của tập phụ thuộc hàm)

F được gọi là một tập phụ thuộc hàm tối thiểu (hay phủ tối thiểu) nếu F thỏa đồng thời ba điều kiện sau:

• F là tập phụ thuộc hàm có vế trái không dư thừa

• F là tập phụ thuộc hàm có vế phải gồm một thuộc tính

• F là tập phụ thuộc hàm không dư thừa

Thuật toán 1.7 (tìm phủ tối thiểu của một tập phụ thuộc hàm)

Vào: Tập phụ thuộc hàm F , lược đồ quan hệ R xác định trên U

Ra: Phủ tối thiểu của F

Phương pháp:

Bước 1: Loại khỏi F các phụ thuộc hàm có vế trái dư thừa

Bước 2: Tách các phụ thuộc hàm có vế phải trên một thuộc tính thành

các phụ thuộc hàm có vế phải gồm một thuộc tính

Bước 3: Loại khỏi F các phụ thuộc hàm dư thừa

Chú ý: Theo thuật toán trên, từ một tập phụ thuộc hàm F luôn tìm được ít nhất một phủ tối thiểu Ftt để F≈Ftt và nếu thứ tự loại các phụ thuộc hàm trong tập F

là khác nhau thì có thể sẽ thu được những phủ tối thiểu khác nhau

1.8 Các dạng chuẩn của lược đồ quan hệ

Chuẩn hoá lược đồ quan hệ làm cho mối quan hệ giữa các tập thuộc tính đơn giản hơn, loại bỏ được sự dư thừa dữ liệu và các dị thường cập nhật

Trang 30

Định nghĩa 1.12 (dạng chuẩn 1, ký hiệu là 1NF)

Một l−ợc đồ quan hệ R đ−ợc gọi là ở dạng chuẩn 1 nếu và chỉ nếu toàn bộ các miền giá trị của các thuộc tính trong R đều chỉ chứa các giá trị nguyên tố

Định nghĩa 1.13

Phụ thuộc đầy đủ và phụ thuộc bộ phận

Cho quan hệ r (U); X, Y ⊆ U:

• Nói rằng Y phụ thuộc đầy đủ vào X nếu:

- X → Y hay phụ thuộc hàm X xác định Y

Một l−ợc đồ quan hệ R đ−ợc gọi là ở dạng chuẩn 2 nếu nó ở dạng chuẩn

1 và mọi thuộc tính không khoá của R đều phụ thuộc đầy đủ vào khoá

Định nghĩa 1.14

Phụ thuộc bắc cầu

Cho l−ợc đồ quan hệ R(U), X là tập con các thuộc tính của U, A là một thuộc tính thuộc U A đ−ợc gọi là phụ thuộc bắc cầu vào X trên R nếu tồn tại tập con Y của R sao cho: X → Y, Y → A nh−ng Y → X với A ∉XY

Dạng chuẩn 3, ký hiệu là 3NF

Một l−ợc đồ quan hệ R đ−ợc gọi là ở dạng chuẩn 3 nếu nó ở dạng chuẩn

2 và mọi thuộc tính không khoá của R đều không phụ thuộc hàm bắc cầu vào khoá

Định nghĩa 1.15 (Dạng chuẩn BC: Boye-Codd Normal Form)

Một l−ợc đồ quan hệ R đ−ợc gọi là ở dạng chuẩn Boye-Codd nếu mọi phụ thuộc hàm X→A thoả mãn trên R và với A∉X thì X là siêu khóa của R

Trang 31

1.9 Phụ thuộc đa trị

Ta thấy rằng giữa dữ liệu có mối quan hệ với nhau và đó là phụ thuộc hàm, nhưng đó không phải là duy nhất Trong thực tế còn nhiều loại phụ thuộc nữa Chẳng hạn: mỗi cặp vợ chồng (tên cha, tên mẹ) không phải là xác định duy nhất tên một đứa con mà là một hoặc một số con Mối quan hệ này trong cơ sở dữ liệu quan hệ gọi là phụ thuộc đa trị [1], [15], [16]

1.9.1 Định nghĩa phụ thuộc đa trị

Cho lược đồ quan hệ R(U) với U = {A1, A2, …, An} là tập các thuộc tính Cho X, Y ⊆ U Ta nói rằng X xác định đa trị Y hay Y phụ thuộc đa trị vào X và kí hiệu X Y nếu với mọi quan hệ xác định trên R(U) và với hai

bộ t

→→

1, t2 bất kỳ mà t1(X) = t2(X) thì tồn tại bộ t3 sao cho:

t3(X) = t1(X), t3(Y) = t1(Y) và t3(Z) = t2(Z) với Z = U \ XY

Do tính đối xứng của t1, t2 dễ dàng thấy rằng trong r còn tồn tại bộ t4 sao cho: t4(X) = t2(X), t4(Y) = t2(Y) và t4(Z) = t1(Z) với Z = U \ XY

Tập tất cả các phụ thuộc đa trị trên lược đồ quan hệ ta kí hiệu là MVD (MultiValued Dependencies)

• Khái niệm phụ thuộc đa trị cũng mô tả ràng buộc (phụ thuộc dữ liệu) giữa tập các thuộc tính Người ta sử dụng các phụ thuộc đa trị để chuẩn hoá các lược đồ quan hệ về dạng chuẩn 4

Ví dụ 1.17: Cho quan hệ r(A, B, C, D, E) như sau:

Trang 32

Trong quan hệ trên có A →→ CD Thật vậy với:

t1= (101, J, M, 2, K, B) ∈r ; t2= (101, J, W, 3, Z, C) ∈r tồn tại 2 bộ:

t3= (101, J, M, 2, Z, C) ∈r và t4= (101, J, W, 3, K, B) ∈r

Theo định nghĩa ta thấy ngay A →/→ C và A →/→ D

Từ định nghĩa trên ta suy ra rằng nếu X → Y thoả trên quan hệ r thì

X→→Y cũng thoả trên r Do vậy mỗi phụ thuộc hàm đều là phụ thuộc đa trị

Dạng chuẩn 4, ký hiệu là 4NF

Cho l−ợc đồ quan hệ R, D là tập các phụ thuộc có thể áp dụng trên R

Ta nói R ở dạng chuẩn 4 nếu có một phụ thuộc đa trị X Y với Y ≠ ỉ,

Y không là tập con của X và XY không chứa tất cả các thuộc tính của R thì X chứa một khoá của R

→→

1.9.2 Các tính chất của phụ thuộc đa trị

Cho l−ợc đồ quan hệ R(U) với U= {A1, A2, …, An} là tập các thuộc tính

Trang 33

Mô hình dữ liệu quan hệ có tính độc lập dữ liệu cao, dễ dàng sử dụng và còn cho phép dễ dàng mô phỏng các hệ thống thông tin đa dạng trong thực tiễn

Trong mô hình này, cơ sở dữ liệu đ−ợc xem nh− là một tập hợp các quan hệ, mỗi quan hệ có thể đ−ợc hình dung một cách trực quan nh− là một bảng chữ nhật gồm có các hàng và các cột ở bảng này mỗi cột ứng với một thuộc tính, mỗi hàng đ−ợc gọi là một bộ Do các quan hệ có cấu trúc phẳng (tuyến tính) nên mô hình này sẽ rất khó khăn khi biểu diễn các dữ liệu có tính chất động (phi tuyến)

Trang 34

cHƯƠNG 2: MÔ HìNH CƠ Sở Dữ LIệU DạNG KHốI

Để mở rộng mô hình quan hệ, chương này đưa ra một mô hình cơ sở

dữ liệu khác gọi là mô hình cơ sở dữ liệu dạng khối được xây dựng và mô tả trong [3], [4], [5], [6], [13] Mô hình này phản ánh được các dữ liệu ở dạng

động, giúp biểu diễn thế giới thực trong quá trình vận động một cách tự nhiên hơn ý nghĩa của các khái niệm phụ thuộc dữ liệu, khoá, các dạng chuẩn như

Gọi R = (id; A1, A2, , An) là một bộ hữu hạn các phần tử, trong đó id

là tập chỉ số hữu hạn khác rỗng, Ai (i=1,n) là các thuộc tính Mỗi thuộc tính

Ai (i=1,n) có miền giá trị tương ứng là dom(Ai ) Một khối trên R, kí hiệu

r(R), là tập hữu hạn các phần tử mà mỗi phần tử là một họ các ánh xạ từ tập

chỉ số id đến các miền trị của các thuộc tính Ai , (i=1,n) Nói một cách khác:

t ∈ r(R) ⇔ t = {ti : id → dom(Ai)} i =1,n

Kí hiệu khối là r(R) hoặc đơn giản là r

Cho R = (id; A1, A2, , An) và r(R) là một khối trên R, khi đó R được

gọi là lược đồ của khối r(R) Như vậy trên cùng một lược đồ khối R có thể

xây dựng được nhiều khối khác nhau

Ví dụ 2.1: Xây dựng khối nhân viên (ký hiệu NV(R)) (hình 2.1) để quản lý

nhân viên một cơ quan: cho lược đồ khối R = (id; A1, A2, A3, A4), trong đó:

id = {1/2009, 2/2009, 3/2009, , 12/2009} và các thuộc tính là A1 = ma (mã),

A2 = ten (tên), A3 = luong (lương), A4 = trinh_do (trình độ)

Trang 35

Với khối NV(R) ở hình 2.1 thì nó gồm 3 phần tử: t1, t2, t3

ma ten luong trinh_do

A01 A 500 TS A01 A 350 ThS

t3 A03 C 200 CD 1/2009

Hình 2.1: Biểu diễn khối nhân viên NV(R)

• Lương của nhân viên t1 ở thời điểm tháng 1/2009 là:

Khi đó r(Rx) được gọi là một lát cắt trên khối r(R) tại điểm x

Ví dụ 2.2: Với khối NV(R) đã cho ở trên, R = (id; A1, A2, A3, A4)

trong đó: id = {1/2009, 2/2009, 3/2009, , 12/2009}

A1 = ma, A2 = ten, A3 = luong, A4 = trinh_do

Trang 36

r(R2/2009): ma ten luong trinh_do

Như vậy mỗi quan hệ r(A1, A2, , An) là một trường hợp đặc biệt của khối, đó chính là khối r(R) với R = ({x}; A1, A2, , An)

Mệnh đề 2.1 [3], [4]

Cho lược đồ khối R = (id; A1, A2, , An), r(R) là một khối trên R, khi

đó tồn tại một họ quan hệ (hiểu theo nghĩa tập hợp) duy nhất biểu diễn họ {r(Rx)}x∈id các lát cắt của khối r(R) Ngược lại không đúng, nghĩa là với một

họ quan hệ cho trước biểu diễn họ các lát cắt của một khối nào đó thì khối tìm

được không duy nhất

2.3 Khóa của khối

Cho lược đồ khối R = (id; A1, A2, , An), r là một khối trên R Với mỗi x ∈ id, t ∈ r(R), t = (t1, t2, , tn), kí hiệu t(x; Ai), (i = 1 n) là giá trị của phần tử t ở thuộc tính Ai tại chỉ số x

Để đơn giản việc trình bày, đặt x(i) = (x; Ai) với x ∈ id và như vậy: t(x(i)) = t( x; Ai) = ti (x), (i = 1 n) Từ đó, kí hiệu:

id(i) = {x(i)|x∈id}, như vậy id(i) = {(x; Ai)|x∈id}

Với X(i) ⊆ id(i) thì kí hiệu: t(X(i)) = {t(y(i))| y(i) ∈ X(i)}

Giả sử t1 , t2 ∈ r(R) với t1 = {ti1 : id → dom(Ai)} i =1 n ,

t2 = {ti

2 : id → dom(Ai)} i =1 n , khi đó định nghĩa khóa của khối r(R) như sau:

Trang 37

Định nghĩa 2.2 [5], [13]

Khóa của khối r trên l−ợc đồ khối R = (id; A1, A2, , An) là một tập

K = {X(i1),X(i2), , X(ih)}, trong đó X(ik) ≠ ∅, X(ik) ⊆ id(ik), (k = 1 h) thỏa mãn hai tính chất:

a) Với mọi t1, t2 ∈ r và t1≠t2 đều tồn tại một X(ik)∈ K sao cho:

- t1ik(X(ik)) ≠ t2ik(X(ik)) Nói một cách khác, không tồn tại 2 phần tử mà:

- t1ik(X(ik)) = t2ik(X(ik)), ∀ k = 1 h

b) Với bất kì tập K’ nào, K’ = {X(i1’), X(i2’), , X(ih’)} với X(ik’)⊆ X(ik), (k = 1 h) và tồn tại X(im’) ⊂ X(im), với m ∈ {1, 2, , h} đều không

có tính chất a) nói trên

Nếu tập K là khóa của khối r(R) thì mọi tập

K” = {X(i1’’),X(i2’’), , X(ih’’)}, trong đó X(ik)⊆ X(ik’’), (∀ k = 1 h) đ−ợc gọi là siêu khóa của khối r

Mệnh đề 2.2 [5], [13]

Cho l−ợc đồ khối R = (id; A1, A2, , An), r(R) là một khối trên R

Khi đó với x ∈ id mà ta có {x(i1), x(i2), , x(ik)} là khóa của lát cắt r(Rx) thì ta

cũng có với mọi y ∈ id, {y(i1), y(i2), ,y(ik)} là khóa của lát cắt r(Ry ) hay nói một cách khác {Ai1, Ai2, , Aik} là khóa của quan hệ r(A1, A2, , An)

Mệnh đề 2.3 [5], [13]

Cho l−ợc đồ khối R = (id; A1, A2, ,An), r(R) là một khối trên R,

id = {x} Khi đó r(R) trở thành quan hệ r(A1, A2, …, An) và mỗi khóa

K = {X(i1),X(i2), , X(ih)}, trong đó X(ik) ⊆ id(ik), (k = 1, 2, , h) của khối r(R)

lại trở thành khóa của quan hệ r(A1, A2, , An)

Mệnh đề 2.4 [5], [13]

Cho R= (id; A1, A2, , An), r(R) là một khối trên R Khi đó với x ∈ id

Trang 38

mà {x(i1), x(i2), , x(ik)} là khóa của khối r(R) thì ta cũng có với mọi y ∈ id, {y(i1), y(i2), , y(ik)} là khóa của lát cắt r(Ry) hay nói một cách khác

{Ai1, Ai2, , Aik} là khóa của quan hệ r(A1, A2, , An)

Mệnh đề 2.5 [5], [13]

Cho lược đồ khối R = (id; A1, A2, , An), r(R) là một khối trên R Khi đó nếu với x ∈ id nào đó mà ta có {x(i1), x(i2), , x(ik)} là khóa của lát cắt r(Rx) thì {id(i1), id(i2), , id(ik)} là khóa của khối r(R)

2.4 Đại số quan hệ trên khối

Cho r là một khối trên lược đồ khối R = (id; A1, A2, , An), ở đây ta giả thiết rằng r là một khối gồm một tập hữu hạn các phần tử Cũng tương tự như đại số quan hệ trong mô hình cơ sở dữ liệu quan hệ, ở đây các phép toán của đại số quan hệ lại được áp dụng cho các khối; bên cạnh đó còn có thêm phép toán mới được xây dựng đó là tích Đề-các theo tập chỉ số [6]

Đối với các phép hợp, giao và trừ thì hai khối tham gia phải là khả hợp (nghĩa là chúng có cùng một lược đồ khối)

Cho hai khối r và s khả hợp, khi đó giao của r và s là một khối, kí hiệu

là r ∩ s, là một khối mà các phần tử của nó thuộc đồng thời cả hai khối r và s

đã cho Ta có: r ∩ s = {t ⎜t ∈ r và t ∈ s}

2.4.3 Phép trừ

Cho hai khối r và s khả hợp, khi đó hiệu của r và s là một khối, kí hiệu

là r - s, là một khối mà các phần tử của nó thuộc r nhưng không thuộc s Ta có: r - s = {t ⎜t ∈ r và t ∉ s}

Trang 39

Ta có mối quan hệ giữa phép giao và phép trừ: r ∩ s = r - (r - s)

Biểu diễn hình thức của tích Đề-các có dạng :

r ì s = {t ⎜t(R) ∈ r và t(S) ∈ s}, trong đó t = (t1, t2, , tn, tn+1, , tn+m), t(R) = (t1, t2, , tn)

và t(S) = (tn+1, , tn+m)

2.4.5 Tích Đề-các theo tập chỉ số

Cho R = (id; A1, A2, , An), S = ( id’; A1, A2, , An) Khi đó tích các của hai khối r(R) và s(S) theo tập chỉ số là một khối, kí hiệu r s, khối này có khung R S = {id

là trs

Gọi j1: id → id id’ ; j2: id’ → id id’ là các phép nhúng thì ta đ−ợc:

trsj1 ∈ r và trsj2 ∈ s và r ìids = {t | tj1 ∈ r và tj2 ∈ s

Trang 40

2.4.6 Phép chiếu

Cho lược đồ khối R = ( id; A1, A2, , An), r là một khối trên R

Khi đó ta gọi P = (id’; Ai1, Ai2, , Aih) là lược đồ con của lược đồ R nếu

id’ ⊆ id, Aij ∈ {A1, A2, , An}, j = 1 h

Một phép chiếu của khối r trên lược đồ con P, kí hiệu ΠP(r) là một khối

có lược đồ P và mỗi phần tử thuộc khối này dạng:

Cho lược đồ khối R = (id; A1, A2, , An) và khối r(R)

Cho một phép chọn nghĩa là ta xây dựng một tập con các phần tử

của khối đã cho thỏa mãn biểu thức F cho trước Biểu thức F được diễn tả

bằng một tổ hợp Boole của các toán hạng, mỗi toán hạng là một phép so sánh

đơn giản giữa hai biến là hai giá trị điểm của hai ánh xạ thành phần nào đó,

hoặc giữa một biến là giá trị điểm của một ánh xạ thành phần và một hằng

Các phép so sánh trong F là <, =, >, ≥, ≤, ≠, còn các phép toán logic trong F

là: ∨, ∧, ơ

Biểu diễn hình thức của phép chọn có dạng: σF(r) = {t ∈ r ⎜ F(t)},

trong đó F(t) là giá trị của biểu thức Boole F tại phần tử t ∈ r

2.4.8 Phép kết nối

Cho lược đồ khối R = (id; A1, A2, , An) và S = (id; B1,B2, , Bm),

cùng với hai khối r(R) và s(S) tương ứng Gọi T = (id ; C1,C2, , Cp), trong đó:

{C1,C2, , Cp} = {A1, A2, , An} ∪ {B1,B2, , Bm}

Ngày đăng: 31/07/2014, 02:44

HÌNH ẢNH LIÊN QUAN

Bảng 1.1: Biểu diễn quan hệ r. - Một số phụ thuộc dữ liệu trong cơ sở dữ liệu dạng khối
Bảng 1.1 Biểu diễn quan hệ r (Trang 14)
Bảng 1.2: Biểu diễn các quan hệ r, s và quan hệ r      s. - Một số phụ thuộc dữ liệu trong cơ sở dữ liệu dạng khối
Bảng 1.2 Biểu diễn các quan hệ r, s và quan hệ r s (Trang 17)
Hình 2.2: Biểu diễn khối Canbo. - Một số phụ thuộc dữ liệu trong cơ sở dữ liệu dạng khối
Hình 2.2 Biểu diễn khối Canbo (Trang 42)
Hình 3.1: Biểu diễn khối Sinhviên1. - Một số phụ thuộc dữ liệu trong cơ sở dữ liệu dạng khối
Hình 3.1 Biểu diễn khối Sinhviên1 (Trang 53)
Hình 3.2: Biểu diễn khối Sinhviên2. - Một số phụ thuộc dữ liệu trong cơ sở dữ liệu dạng khối
Hình 3.2 Biểu diễn khối Sinhviên2 (Trang 63)
Hình 3.3: Biểu diễn khối Sinhviên3. - Một số phụ thuộc dữ liệu trong cơ sở dữ liệu dạng khối
Hình 3.3 Biểu diễn khối Sinhviên3 (Trang 75)
Bảng 3.1: Quan hệ gần nhau trên miền giá trị của A 1 .  khối cho ở hình 3.3 ta thấy có α-phụ thuộc hàm sau: - Một số phụ thuộc dữ liệu trong cơ sở dữ liệu dạng khối
Bảng 3.1 Quan hệ gần nhau trên miền giá trị của A 1 . khối cho ở hình 3.3 ta thấy có α-phụ thuộc hàm sau: (Trang 75)

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

🧩 Sản phẩm bạn có thể quan tâm