Tải bản đầy đủ (.ppt) (33 trang)

PHỤ THUỘC đa TRỊ, PHỤ THUỘC kết hợp và các DẠNG CHUẨN NÂNG CAO

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (574.96 KB, 33 trang )

PHỤ THUỘC ĐA TRỊ, PHỤ THUỘC
KẾT HỢP VÀ CÁC DẠNG CHUẨN
NÂNG CAO
GV: PGS.TS. Đ ng Th Bích Th yồ ị ủ
Nhóm thực hiện: Nhóm 2
1. Đặng Trần Minh Hậu
2. Vũ Quôc Hoàng
3. Cao Xuân Nam
4. Lê Ngọc Thành
TP.HCM – 01/2008

Ph Thu c Đa Trụ ộ ị

Đ t V n Đặ ấ ề

Ph Thu c Đa Trụ ộ ị

Ki m Tra Ph Thu c Đa Trể ụ ộ ị

Lu t D n Cho Ph Thu c Đa Trậ ẫ ụ ộ ị

C S T p T i Ti u R i R cơ ở ậ ố ể ờ ạ

C S Ph Thu cơ ở ụ ộ

D ng chu n 4ạ ẩ

Ph Thu c K tụ ộ ế
NỘI DUNG TRÌNH BÀY
2
ĐẶT VẤN ĐỀ


3
dichvu
MAMB NGAYBAY LOAIMB
106 Th 2ứ A300
106 Th 3ứ A300
106 Th 2ứ B52
106 Th 3ứ B52
mb_loai MAMB LOAIMB
106 A300
106 B52
Ví dụ 1:
Xét 1 thể hiện của quan hệ dichvu(MAMB,NGAYBAY,LOAIMB)
Ta thấy có sự trùng lắp thông tin nên tiến hành tách thành 2
bảng.
mb_ngay MAMB NGAYBAY
106 Th 2ứ
106 Th 3ứ
ĐẶT VẤN ĐỀ
4
dichvu
MAMB NGAYBAY LOAIMB
106 Th 2ứ A300
106 Th 3ứ A300
106 Th 2ứ B52
106 Th 3ứ B52
mb_loai MAMB LOAIMB
106 A300
106 B52
Ví dụ 2: Quan hệ dichvu(MAMB,NGAYBAY,LOAIMB)
Sau khi tách thành 2 bảng như trước, nhưng khi kết lại thì

không có được bảng ban đầu.
Tách ra có làm sai lệch thông tin trong bảng chính hay không?
mb_ngay MAMB NGAYBAY
106 Th 2ứ
106 Th 3ứ

Ph Thu c Đa Trụ ộ ị

Đ t V n Đặ ấ ề

Ph Thu c Đa Trụ ộ ị

Ki m Tra Ph Thu c Đa Trể ụ ộ ị

Lu t D n Cho Ph Thu c Đa Trậ ẫ ụ ộ ị

C S T p T i Ti u R i R cơ ở ậ ố ể ờ ạ

C S Ph Thu cơ ở ụ ộ

D ng chu n 4ạ ẩ

Ph Thu c K tụ ộ ế
NỘI DUNG TRÌNH BÀY
5
PHỤ THUỘC ĐA TRỊ
Định nghĩa: Cho lược đồ quan hệ R với X, Y là tập thuộc
tính của R; Z = R - (X Y) và 1 quan hệ r(R) thỏa phụ
thuộc đa trị X →→ Y nếu:
Với mọi bộ t

1
, t
2
thuộc r mà t
1
(X)=t
2
(X) phải tồn tại bộ t
3
, t
4

sao cho
t
3
(X) = t
1
(X), t
3
(Y) = t
1
(Y),t
3
(Z) = t
2
(Z)
Tương tự,
t
4
(X) = t

1
(X), t
4
(Y) = t
2
(Y),t
4
(Z) = t
1
(Z)
Khi đó ta nói X xác định đa trị Y.
6
PHỤ THUỘC ĐA TRỊ
7
dichvu
MAMB NGAYBAY LOAIMB
t1-> 106 Th 2ứ A300
t4-> 106 Th 3ứ A300
t3-> 106 Th 2ứ B52
t2-> 106 Th 3ứ B52
Từ Ví dụ 1:
X: MAMB, Y: NGAYBAY, Z: LOAIMB
Chọn t1, t2, t3, t4 như trong bảng trên. Ta thấy,với t1(X) =
t2(X) = 106 ta tìm được t
3
, t
4
- t
3
(X) = t

1
(X) = 106
- t
3
(Y) = t
1
(Y) = Thứ 2
- t
3
(Z) = t
2
(Z) = B52
Tương tự với t
4
Ta nói, MAMB →→ NGAYBAY
PHỤ THUỘC ĐA TRỊ
Bổ đề:
Nếu quan hệ r(R) thỏa X →→ Y và Z = R - (X Y) thì r
cũng thỏa X →→ Z
Trong ví dụ 1:
r(dichvu) thỏa MAMB →→ NGAYBAY và Z = LOAIMB thì
r cũng thỏa MAMB →→ LOAIMB
8
dichvu
MAMB NGAYBAY LOAIMB
106 Th 2ứ A300
106 Th 3ứ A300
106 Th 2ứ B52
106 Th 3ứ B52
PHỤ THUỘC ĐA TRỊ

Định lý: Cho lược đồ quan hệ R; X, Y là tập thuộc
tính của R và Z = R - (X Y); quan hệ r thỏa phụ
thuộc đa trị X →→ Y nếu và chỉ nếu r phân rã thành
2 lược đồ quan hệ R1(XY) và R2(XZ) mà vẫn bảo
toàn thông tin.
Bằng cách nào để kiểm tra phụ thuộc đa trị
9

Ph Thu c Đa Trụ ộ ị

Đ t V n Đặ ấ ề

Ph Thu c Đa Trụ ộ ị

Ki m Tra Ph Thu c Đa Trể ụ ộ ị

Lu t D n Cho Ph Thu c Đa Trậ ẫ ụ ộ ị

C S T p T i Ti u R i R cơ ở ậ ố ể ờ ạ

C S Ph Thu cơ ở ụ ộ

D ng chu n 4ạ ẩ

Ph Thu c K tụ ộ ế
NỘI DUNG TRÌNH BÀY
10
KIỂM TRA PHỤ THUỘC ĐA TRỊ

Dùng phép chiếu và phép kết trên 2 lược đồ được phân

rã theo định lý
11
dichvu
MAMB NGAYBAY LOAIMB
106 Th 2ứ A300
106 Th 3ứ A300
106 Th 2ứ B52
106 Th 3ứ B52
mb_ng
ay
MAMB NGAYB
AY
106 Th 2ứ
106 Th 3ứ
mb_loai MAMB LOAIM
B
106 A300
106 B52
X
KIỂM TRA PHỤ THUỘC ĐA TRỊ

Dùng cách đếm:
Quan hệ r thỏa X →→ Y nếu với mọi cặp giá tri của XY
Trong đó:
VD:
12
)]([)]([ rxyXYcrxXc
zz
===
|))((|)]([ rrxXc

xXww
=
==
σπ
dichvu
MAMB NGAYBAY LOAIMB
106 Th 2ứ A300
106 Th 3ứ A300
106 Th 2ứ B52
106 Th 3ứ B52
2)](3_106_[
2)](2_106_[
2)](106[
==
==
==
dichvuThuNGAYBA YMAMBc
dichvuThuNGAYBA YMAMBc
dichvuMAMBc
LOAIMB
LOAIMB
LOAIMB

Ph Thu c Đa Trụ ộ ị

Đ t V n Đặ ấ ề

Ph Thu c Đa Trụ ộ ị

Ki m Tra Ph Thu c Đa Trể ụ ộ ị


Lu t D n Cho Ph Thu c Đa Trậ ẫ ụ ộ ị

C S T p T i Ti u R i R cơ ở ậ ố ể ờ ạ

C S Ph Thu cơ ở ụ ộ

D ng chu n 4ạ ẩ

Ph Thu c K tụ ộ ế
NỘI DUNG TRÌNH BÀY
13
LUẬT DẪN CHO PHỤ THUỘC ĐA TRỊ

M1. Luật phản xạ: X →→ X

M2. Luật thêm vào:nếu X →→ Y thì XZ →→ Y

M3. Luật cộng: nếu X →→ Y và X →→ Z thì X →→ YZ

M4. Luật chiếu (projectivity): nếu X →→ Y và X →→ Z thì
X →→ Y Z và X →→ Y - Z

M5. Luật bắc cầu: nếu X →→ Y và Y →→ Z thì Y →→ Z-Y

M6. Luật bắc cầu giả: nếu X →→ Y và YW →→ Z thì
XW →→ Z - (YW)

M7. Luật bù: X →→Y và Z=R-(XY) thì X →→Z
14



Ph Thu c Đa Trụ ộ ị

Đ t V n Đặ ấ ề

Ph Thu c Đa Trụ ộ ị

Ki m Tra Ph Thu c Đa Trể ụ ộ ị

Lu t D n Cho Ph Thu c Đa Trậ ẫ ụ ộ ị

C S T p T i Ti u R i R cơ ở ậ ố ể ờ ạ

C S Ph Thu cơ ở ụ ộ

D ng chu n 4ạ ẩ

Ph Thu c K tụ ộ ế
NỘI DUNG TRÌNH BÀY
15
CƠ SỞ TẬP TỐI THIỂU RỜI RẠC

Định nghĩa: Cho trước S = {S
1
, S
2
, …, S
p
} sao cho S

1
U
S
2
…. U S
p
= Q
+
; cơ sở tập tối tiểu rời rạc mdsb(S) là các
phân rã T
1
, T
2
, …, T
q
của Q
+
sao cho:
<1> Mọi S
i
là hội của 1 vài T
j
<2> Không có phân rã nào khác có số phần tử ít hơn
thỏa tính chất 1.

Ví dụ: Q(ABCDE)
S={ABCD,CDE,AE}
mdsb(S) = {A,E,CD,B}
16


Ph Thu c Đa Trụ ộ ị

Đ t V n Đặ ấ ề

Ph Thu c Đa Trụ ộ ị

Ki m Tra Ph Thu c Đa Trể ụ ộ ị

Lu t D n Cho Ph Thu c Đa Trậ ẫ ụ ộ ị

C S T p T i Ti u R i R cơ ở ậ ố ể ờ ạ

C S Ph Thu cơ ở ụ ộ

D ng chu n 4ạ ẩ

Ph Thu c K tụ ộ ế
NỘI DUNG TRÌNH BÀY
17
CƠ SỞ PHỤ THUỘC

Định nghĩa: Cho F là tập các phụ thuộc đa trị trên R và
X R, G là tập :
G = {Y| F |= X →→ Y }
Cơ sở phụ thuộc của X trên F là mdsb(G), được kí hiệu là
DEP(X).
Nếu X = A
1
A
2

…A
n
và DEP(X) = {A
1
A
2
A
n
,Y
1
,Y
2
,…,Y
m
}
thì X →→ Y
1
|Y
2
|…|Y
m

Ví dụ: F = {A →→ BC,DE →→ C}
X=A và G={A,BC,DE,C,BDE,B,BCDE,CDE}
DEP(A) = mdsb(G) = {A,B,C,DE}
18

CƠ SỞ PHỤ THUỘC

Thuật toán tính DEP(X):

1. Tìm G của tất cả các Y mà X →→ Y bằng luật thêm vào
2. DEP(X) = mdsb(G)
3. Tìm 1 phụ thuộc đa trị W →→ Z để tinh chế DEP(X) bằng
luật bắc cầu.

W Y = Y
1
Y
2
…Y
k
=>Y →→ Z (luật thêm vào), X →→ Z-Y
(luật bắc cầu)

Nếu ( Z-Y là hội của 1 vài tập trong DEP(X)) thì không tinh
chế DEP(X)

ngược lại DEP(X) = mdsb(DEP(X) U {Z-Y})

Nếu không có MVD trong F có thể thay đổi DEP(X) thì kết
thúc

19
19
CƠ SỞ PHỤ THUỘC

Ví dụ: F = {A →→ BC, DE →→ C }, tính DEP(A)
A →→A (phản xạ): G = {A}
A →→BC : G = {A,BC}
A →→DE(luật bù) : G = {A,BC,DE}

DEP(A) = mdsb(G) = mdsb({A,BC, DE})
Vì DE →→ C và A →→ DE nên A →→ C (bắc cầu)
Tinh chế DEP(A) = mdsb({BC, DE, A} U C)
DEP(A) = {B, C, DE, A}
20

Ph Thu c Đa Trụ ộ ị

Đ t V n Đặ ấ ề

Ph Thu c Đa Trụ ộ ị

Ki m Tra Ph Thu c Đa Trể ụ ộ ị

Lu t D n Cho Ph Thu c Đa Trậ ẫ ụ ộ ị

C S T p T i Ti u R i R cơ ở ậ ố ể ờ ạ

C S Ph Thu cơ ở ụ ộ

D ng chu n 4ạ ẩ

Ph Thu c K tụ ộ ế
NỘI DUNG TRÌNH BÀY
21
DẠNG CHUẨN 4 (1)

Định nghĩa 1:
Phụ thuộc đa trị X →→ Y gọi là hiển nhiên trong R nếu
hoặc


Định nghĩa 2 – Dạng chuẩn 4:
Cho F là tập bao gồm Phụ thuộc hàm và Phụ thuộc đa trị.
Lược đồ quan hệ R đạt dạng chuẩn 4 trên F nếu mọi phụ
thuộc đa trị X →→ Y ( ) suy diễn từ F là phụ
thuộc đa trị hiển nhiên hoặc X là siêu khóa của R

Lược đồ cơ sở dữ liệu R đạt dạng chuẩn 4 trên F nếu
mọi lược đồ quan hệ R trong R đều đạt dạng chuẩn 4
Y X

X Y R∪ =
,X Y R⊂
22
DẠNG CHUẨN 4 (2)

Ví dụ:
Xét R = (A B C D E) và F = {A → B C, C →→ D E}
- R không đạt dạng chuẩn 4 trên F vì phụ thuộc đa
trị C →→ D E không thỏa định nghĩa.
- Xét R1 = (A B C) và R2 = (C D E). R1 và R2 đạt
dạng chuẩn 4 trên F (R1 và R2 phân rã từ R sử
dụng C →→ D E)
23
DẠNG CHUẨN 4 (3)

Chuẩn hóa Lược đồ CSDL thành dạng chuẩn 4 từ
Lược đồ quan hệ R và tập Phụ thuộc hàm & Phụ
thuộc đa trị F:


Bắt đầu từ R không đạt dạng chuẩn 4, lặp lại các bước
sau:

Tìm phụ thuộc đa trị không hiển nhiên X →→ Y ( ) suy
diễn từ F, với X không phải là khóa của lược đồ quan hệ R

Phân rã R thành 2 lược đồ quan hệ R1 và R2 theo phụ thuộc đa
trị tìm được ở trên

Nếu R1 (R2) không đạt dạng chuẩn 4, lặp lại quá trình với R1
(R2)

Nếu R1 và R2 đạt dạng chuẩn 4. Dừng.
,X Y R

24
DẠNG CHUẨN 4 (4)

Ví dụ:
Xét R = (A B C D E I) và F = {A →→ B C D, B → A C, C →
D}
- R không đạt dạng chuẩn 4 vì phụ thuộc đa trị không hiển
nhiên A →→ B C D , A không phải là khóa của R
- Phân rã R theo A →→ B C D: R1(A B C D), R2(A E I)
+ R2 đạt dạng chuẩn 4
+ R1 không đạt dạng chuẩn: do B là khóa của R1 nên
không phân rã theo B →→ A C
+ C →→ D không hiển nhiên, C không phải khóa của R1,
phân rã R1 theo C →→ D: R11(C D), R12(A B C)
+ R11, R12 đạt đạng chuẩn 4.

R = {R2, R11, R12} đạt dạng chuẩn 4
25

×