Ñeå coù theå ñaùnh giaù moät caùch cuï theå chaát löôïng thieát keá cuûa moät löôïc ñoà CSDL, luùc ñaàu E.F.Codd (taùc giaû cuûa moâ hình döõ lieäu quan heä) ñöa ra 3 daïng chuaån v[r]
(1)CHUẨN HÓA CƠ SỞ DỮ LIỆU
1 Đặt vấn đề
2 Dạng chuẩn Dạng chuẩn Dạng chuẩn
5 Dạng chuaån Boyce-Codd
(2)2
1 ĐẶT VẤN ĐỀ
Xét quan hệ ĐẶT_HAØNG (SốĐH, NgàyĐH, MãKH, MãHH, SốLượng )
SốĐH NgàyĐH MãKH MãHH SốLượng
DH01 5/1/99 KH01 H01 50
DH02 13/2/99 KH05 H02 30
DH02 13/2/99 KH05 H03 40
Với tập Pth F = { SốĐH NgàyĐH, MãKH ; SốĐH, MãHH SốLượng }
(3)1 ĐẶT VẤN ĐỀ
Sự trùng lắp thông tin dẫn đến:
Tăng chí phí lưu trữ
Tăng chi phí kiểm tra RBTV Thiếu quán
(4)4
1 ĐẶT VẤN ĐỀ
Tổ chức lại thành quan hệ sau:
ĐẶT_HÀNG ( SốĐH, NgàH, MãKH )
Với F1 = { SốĐH NgàyĐH, MãKH } CHITIẾT_ĐH (SốĐH, MãHH, SốLượng )
Với F2 = { SốĐH, MãHH SốLượng }
(5)1 ĐẶT VẤN ĐỀ
Để đánh giá cách cụ thể chất lượng thiết kế lược đồ CSDL, lúc đầu E.F.Codd (tác giả mơ hình liệu quan hệ) đưa 3 dạng chuẩn sau R.F.Boyce E.F.Codd cải tiến dạng chuẩn gọi dạng chuẩn Boyce-Codd (BC)
(6)6
1 ĐẶT VẤN ĐỀ
Mục đích trình chuẩn hóa
Để biểu diễn quan hệ
CSDL
Tránh sai sót thêm, xóa, sửa liệu Tránh phải xây dựng lại cấu trúc
(7)2 DẠNG CHUẨN 1
Thuộc tính đơn: Giả sử có lược đồ quan hệ Q Một thuộc tính A Q gọi thuộc tính
đơn khơng phải tích hợp nhiều thuộc tính khác
Ví dụ 1: Môn không thuộc tính đơn CHUYÊN_MÔN (MÃGV, MOÂN )
MAGV MOÂN
GV01 PASC, CTDL
(8)8
2 DẠNG CHUẨN 1
Định nghóa:
Một lược đồ quan hệ Q gọi dạng
chuẩn thuộc tính Q thuộc tính đơn
Một lược đồ CSDL gọi dạng
(9)2 DẠNG CHUẨN 1
Ví dụ:
Quan hệ CHUN_MƠN khơng đạt dạng chuẩn
Khắc phục CHUYÊN_MÔN (MÃGV, MÔN )
MAGV MÔN
GV01 PASC
GV01 CTDL
GV02 CSDL
(10)10
3 DẠNG CHUẨN 2
Phụ thuộc đầy đủ:
Giả sử có lược đồ quan hệ Q tập phụ
thuộc hàm F Thuộc tính A gọi phụ
thuộc đầy đủ vào tập thuộc tính X nếu: a) A X+
F
b) X A phụ thuộc hàm nguyên tố
(11)3 DẠNG CHUẨN 2
Định nghóa:
Một lược đồ quan hệ Q gọi dạng
chuẩn
Q dạng chuẩn 1
Mọi thuộc tính khơng khóa Q
phụ thuộc đầy đủ vào khóa Q
Một lược đồ CSDL gọi dạng
(12)12
3 DẠNG CHUẨN 2
Ví dụ: Quan hệ ĐẶT_HAØNG (SốĐH, MãHH, NgàyĐH, MãKH, SốLượng )
Với tập Pth F = { SốĐH NgàyĐH, MãKH ; SốĐH,
MãHH SốLượng }
Không đạt dạng chuẩn
Khắc phục: Tách thành quan hệ:
ĐẶT_HÀNG ( SốĐH, NgàH, MãKH )
Với F1 = { SốĐH NgàyĐH, MãKH }
CHITIẾT_ĐH (SốĐH, MãHH, SốLượng )
(13)3 DẠNG CHUẨN 2
Nhận xét
Nếu lược đồ quan hệ Q có khóa K
K có thuộc tính Q dạng chuẩn
Một lược đồ quan hệ Q dạng chuẩn
(14)14
4 DẠNG CHUẨN 3
Phụ thuộc bắc cầu:
Thuộc tính A Q+ gọi phụ thuộc bắc cầu vào tập thuộc tính X YQ+ :
1) X Y F+ vaø Y A F+
2) Y X F+
3) A (X Y)
Khi X A gọi phụ thuộc hàm bắc
(15)4 DẠNG CHUẨN 3
Định nghóa:
Một lược đồ quan hệ Q gọi dạng chuẩn
Q dạng chuẩn 2
Mọi thuộc tính không khóa Q
đều khơng phụ thuộc bắc cầu vào một khóa Q
Một lược đồ CSDL gọi dạng
(16)16
4 DẠNG CHUẨN 3
Ví dụ: Quan hệ GIẢNG_DẠY(MãLớp, MãsốGV, TênGV, Địachỉ )
Với tập Pth F = { Mãlớp MãsốGV; MãSốGV
TênGV, Địachỉ }
Không đạt dạng chuẩn
Khắc phục: Tách thành quan hệ: GIẢNG_DẠY(MãLớp, MãsốGV)
Với tập Pth F1 = { Mãlớp MãsốGV}
GIÁO_VIÊN(MãsốGV, TênGV, Địachỉ )
(17)4 DẠNG CHUẨN 3
Nhận xét
Chính phụ thuộc hàm bắc cầu nguyên
nhân dẫn đến tình trạng trùng lắp thơng tin
Dạng chuẩn tiêu chuẩn tối thiểu
(18)18
5 DẠNG CHUẨN BOYCE-CODD
Định nghóa:
Một lược đồ quan hệ Q gọi dạng
chuẩn Boyce-Codd (BC) phụ
thuộc hàm khơng hiển nhiên F có vế trái khóa
Một lược đồ CSDL gọi dạng
(19)5 DAÏNG CHUẨN BOYCE-CODD
Nhận xét:
Nếu lược đồ quan hệ Q dạng chuẩn BC
thì dạng chuẩn
Trong lược đồ quan hệ Q dạng chuẩn
(20)20
Ví du
PCGD(Malop, Mamon, MAGV) F={Malop, Mamon->MAGV;
MAGV->Mamon} Phân
(21)5 DẠNG CHUẨN BOYCE-CODD
Ví dụ:
ĐẶT_HÀNG ( SốĐH, NgàH, MãKH )
Với F1 = { SốĐH NgàyĐH, MãKH }
CHITIẾT_ĐH (SốĐH, MãHH, SốLượng )
Với F2 = { SốĐH, MãHH SốLượng }
(22)22
6 CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ
Q trình chuẩn hóa lược đồ CSDL nhằm
mục đích nâng cao chất lượng thiết kế hay cụ thể đưa lược đồ quan hệ từ dạng chuẩn thấp lên dạng chuẩn cao
hơn mà tối thiểu phải dạng chuẩn 3
Phương pháp phân rã phương pháp
(23)6 CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ
Sự bảo tồn thơng tin
Việc chuẩn hóa lược đồ quan hệ hay
lược đồ CSDL phải bảo đảm u cầu:
bảo tồn thơng tin
Phép phân rã Q thành Q
1, Q2, … gọi bảo tồn thơng tin nếu:
(24)24
6 CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ
Định lý Delobel
Cho lược đồ quan hệ Q(XYZ) tập phụ thuộc hàm F
Neáu X Y F+ phép phân rã Q thành
(25)6 CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ
Phương pháp phân rã: Begin
F+ = F \ { f F+ / VT(f) VP(f) Q+ } IF (F+ ) Then
Begin
B1.Choïn f0: X Y F+
(26)26
6 CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ
Q1 = X Y
F1 ={ f F+ / VT(f) VP(f) Q
1+ } Q2 = Q+ \ Y
F2 = { f F+ / VT(f) VP(f) Q
2+ } B3.Phân rã đệ quy Q1 Q2
(27)6 CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ
Ví dụ:
Cho lược đồ quan hệ Q(ABCDEG) tập pth F = { AE C (f1), CG A (f2), BD G (f3), GA E (f4) }
Khóa Q {BDA}, {BDC}
BD G : không đạt dạng chuẩn 2
(28)28
6 CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ
Ví dụ:
Q(ABCDEG) f3
Q1(BDG) Q2(BDACE)
F1={BD G} F2 = {AE C}
Q21(AEC) Q22(BDAE)
(29)6 CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ
Nhận xét:
Thuật tốn phân rã bảo tồn
thông tin (định lyù Delobel)
Các lược đồ quan hệ cuối (nút
trong phân rã) dạng
chuẩn 3
Thuật tốn phân rã tạo
(30)30
6 CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ
Nhaän xét:
Chất lượng CSDL kết có phụ thuộc
vào việc chọn pth f0 bước phân rã
Thông thường pth chọn pth gây