Phộp tỏch lược đồ quan hệ thành BCNF

Một phần của tài liệu Tài liệu học tập cơ sở dữ liệu (Trang 138 - 140)

Định lý :

a. Giả sử R là một lược đồ quan hệ với tập phụ thuộc hàm F.

Gọi 𝛒 =(R1, ….., Rk) là một phộp tỏch khụng mất mỏt thụng tin của R đối với F. Gọi Fi là hỡnh chiếu của F trờn Ri, i=1…k, tức là tập của (X→Y) ∈ F + sao cho X⊆ Ri và Y⊆ Ri.

Gọi 𝛅 =(S1,……,Sm) là phộp tỏch khụng mất mỏt thụng tin của Riđối với Fi. Khi đú phộp tỏch của R thành (R1,….., Ri-1, S1….. ,Sm, Ri+1….., Rk) đối với F là khụng mất mỏt thụng tin.

b. Giả sử R, F và 𝝆như ở mục (a).

Gọi t= (R1,….., Rk, Rk+1, ……, Rn) là một phộp tỏch của R thành tập cỏc lược đồ bao gồm cả𝛒thỡ t cũng là phộp tỏch khụng làm mất mỏt thụng tin đối với F.

Thuật toỏn: Tỏch một lược đồ quan hệ thành BCNF

Input : Lược đồ quan hệ R và tập phụ thuộc hàm F

Output : Phộp tỏch của R khụng làm mất mỏt thụng tin sao cho mỗi lược đồ quan hệtrong phộp tỏch đều ở dạng BCNF đối với phộp chiếu của F trờn lược đồđú.

KHOA CNTT –TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CễNG NGHIỆP

Cấu trỳc phộp tạch 𝝆 trờn R theo phương phỏp lặp liờn tiếp. Tại mỗi bước phộp tỏch 𝝆là đảm bảo khụng mất mỏt thụng tin đối với F.

Bước đầu: 𝝆 chỉ bao gồm R

Cỏc bước tiếp theo : Nếu S là một lược đồ thuục 𝝆 , S chưa ở dạng BCNF, chọn X→A là phụ thuộc hàm thỏa trờn S, trong đú X khụng chứa khúa của S, A∉ X. Rừ ràng cần phải cú một số thuộc tớnh khỏc của S vừa khụng phải A, vừa khụng thuộc X hoặc nếu khụng thuộc X thỡ phải chứa một khúa của S. Thay thế S trong 𝝆 bởi S1và S2 với S1=XA, S2= S - A

Theo định lý, phộp tỏch S thành S1 và S2 là khụng mất mỏt thụng tin đối với tập phụ thuộc hàm trờn S vỡ rằng S1 ∩S2 = X, X→S1 –S2 = A.

Theo bổ đềphần (a) được thay S bằng S1 và S2 là khụng mất mỏt thụng tin. Mỗi lược đồ đều cú số thuộc tớnh ớt hơn S.

Quỏ trỡnh tiếp tụ cho tới khi tất cả cỏclược đồđều ở BCNF. Chỳ ý rằng tại mọi thời điểm 𝝆 luụn đảm bảo khụng mất mỏt thụng tin, vỡ rằng 𝝆 ban đầu là R, mà bước thay đổi 𝝆đều bảo toàn tớnh chất đú.

Vớ dụ:

Cho lược đồ R(CTHRSG), trong đú C- giỏo trỡnh, T- Thầy giỏo, H- giờ, R- Phũng học, S- Sinh viờn, G- Lớp. Tập cỏc phụ thuộc hàm:

C→T: Mỗi giỏo trỡnh cú một thầy dạy

HR→C: Chỉ một mụn học (giỏo trỡnh) ở một phũng tại một thời điểm HT→R: Tại mỗi thời điểm mỗi thầy chỉ cú thể dạy ở một phũng CS→G: Mỗi sin viờn chỉ ở một lớp theo học mỗi giỏo trỡnh HS→R: Mỗi sinh viờn chỉ cú thể ở một phũng tại mỗi thời điểm

Giải :

Khúa của R là HS

KHOA CNTT –TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CễNG NGHIỆP

Xột CS→G cho R. Vi phạm điều kiện BCNF vỡ CS khụng chưa khúa. Do vậy, dựng thuật toỏn 3.3 để tỏch R thành R1(CSG) và R2(CTHRS). Bước tiếp theo cần tớnh F+ và chiếu xuống R1 và R2, sau đú kiểm tra cỏc lược đồ đó ở BCNF hay chưa. Cú thể biểu diễn quỏ trỡnh tỏch qua sơ đồ sau :

Một phần của tài liệu Tài liệu học tập cơ sở dữ liệu (Trang 138 - 140)