1. Trang chủ
  2. » Nghệ sĩ và thiết kế

Slide Nhập môn cơ sở dữ liệu – Chương 4.2 – Thuật toán thiết kế Cơ sở dữ liệu – Nguyễn Hà Nam – UET – Tài liệu VNU

27 30 1

Đ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 27
Dung lượng 737,8 KB

Nội dung

Nếu có một hàng trong số đó chứa 1 trong các cột ứng với thuộc tính Y thì hãy làm cho các hàng cho các cột tương ứng của các hàng khác cũng chứa 1.. Nếu có một hàng chứa toàn ký hiệu “[r]

(1)

Chương

(2)

Phép tách bảo toàn phụ thuộc

 Một số định nghĩa

- Quan hệ vũ trụ đơn R={A1, …An} chứa tất thuộc tính CSDL

- Tập hợp F phụ thuộc hàm phải thỏa mãn

R

- Thuật toán tách phân chia R thành tập quan hệ

D= {R1, …Rm} gọi lược đồ CSDL quan hệ D gọi phép tách

- Điều kiện bảo tồn thuộc tính ∪Ri=R

- Tính khơng đầy đủ dạng chuẩn: khơng đảm bảo

(3)

Nhập môn Cơ sở liệu - Khoa CNTT

Phép tách bảo toàn FD… (tt)

 ĐN (đk bảo toàn phụ thuộc) Một phụ thuộc hàm

XY phải xuất F suy diễn

từ DF thông qua phép biến đổi F

(4)

Phép tách bảo toàn FD… (tt)

 Ta nói phép tách D = {R1, R2, …, Rm} R bảo toàn phụ thuộc F hợp phép chiếu F Ri trong D tương đương với F Điều có nghĩa là:

(5)

Nhập môn Cơ sở liệu - Khoa CNTT

Phép tách bảo toàn FD… (tt)

 Để kiểm tra xem phụ thuộc hàm X B,

đó X tập thuộc tính thuộc Ri, B thuộc tính thuộc Ri có thỏa mãn Ri hay không ta làm sau:

 Tính X+ ,

 Với thuộc tính B, kiểm tra

1 B thuộc tính Ri B X+:

3 B không X

(6)

Phép tách bảo toàn FD… (tt)

 Ví dụ Xét lược đồ quan hệ:

R = { A,B,C,D} với phụ thuộc hàm:

A  BCD; BC  DA; D B

 Lược đồ có hai khóa dự tuyển A BC

 Lược đồ vi phạm BCNF Nó tách thành:

- R1 = {D,B}, lược đồ chứa phụ thuộc hàm D  B

- R2 = {A,C,D}, lược đồ chứa phụ thuộc hàm A  CD

(7)

Nhập môn Cơ sở liệu - Khoa CNTT

Phép tách bảo toàn FD… (tt)

Thuật tốn 5.1: Tạo phép tách bảo tồn phụ

thuộc D = {R1, R2, …, Rn} quan hệ vũ trụ R dựa tập phụ thuộc hàm F cho Ri D 3NF

Thuật toán đảm bảo tính chất bảo tồn phụ

(8)

Phép tách bảo toàn FD… (tt)  Input: Một quan hệ vũ trụ R tập phụ thuộc hàm F

các thuộc tính R

1 Tìm phủ tối thiểu G F

2 Với vế trái X phụ thuộc hàm xuất G,

hãy tạo lược đồ D với thuộc tính {X  {A1}  {A2} … {Ak}} XA1, XA2,…, XAk phụ thuộc hàm G với X vế trái (X khóa quan hệ này)

3 Đặt thuộc tính cịn lại (những thuộc tính chưa đặt

(9)

Nhập môn Cơ sở liệu - Khoa CNTT

Phép tách bảo tồn FD… (tt)

 Ví dụ: Xét lược đồ quan hệ:

R = { A,B,C,D} với phụ thuộc hàm:

A  BCD; BC  DA; D B

Yêu cầu tách lược đồ R thành tập lược đồ

(10)

Phép tách bảo toàn FD… (tt)

 Ta thực thuật toán sau:

- B1: Tìm G phủ tối thiểu F

 Theo thuật tốn tìm phủ tối thiểu, ta làm cho vế phải G chứa thuộc tính, ta có:

 G = {A  B; A  C; A D; BC  D; BC  A; D  B}

 Sau ta bỏ phụ thuộc hàm thừa (A B)

 G = {A  C; A D; BC  D; BC  A; D  B}

- B2: Lược đồ R tách thành:

 R1( A,C,D)

 R2(B,C,D,A)

(11)

Nhập môn Cơ sở liệu - Khoa CNTT 11

Phép tách không mát

(12)

Phép tách không mát (tt)

Thuật tốn 5.2: kiểm tra nối khơng mát

Input: Một quan hệ vũ trụ R(A1,A2,…An), phép tách D = {R1, R2, …, Rm} R tập F phụ thuộc hàm

1 Tạo ma trận S có m hàng, n cột Mỗi cột ma trận ứng với

thuộc tính, hàng ứng với quan hệ Ri

2 Đặt S(i,j) = thuộc tính Aj thuộc quan hệ Ri

trường hợp ngược lại

3 Lặp lại vòng lặp sau việc thực vịng lặp khơng

làm thay đổi S: Với phụ thuộc hàm X  Y F, xác định hàng S có ký hiệu cột ứng với thuộc tính X Nếu có hàng số chứa cột ứng với thuộc tính Y làm cho hàng cho cột tương ứng hàng khác chứa

4 Nếu có hàng chứa tồn ký hiệu “1” phép tách có tính chất nối

(13)

Nhập môn Cơ sở liệu - Khoa CNTT 13

Ví dụ

 R = (MaNV, TenNV, MaDA, TenDA, DDiem, Sốgiờ)

 F= {MaNV TenNV,

MaDA  {TenDA, DDiem},

{MaNV, MaDA}  Sốgiờ}

 R1= (MaNV, TenNV)

 R2 = (MaDA, TenDA, DDiem)

 R3 = (MaNV, MaDA, Sốgiờ)

(14)

MaNV TenNV MaDA TenDA Ddiem Sốgiờ

R1 1 0 0

R2 0 1

R3 1 0

B1,

MaNV TenNV MaDA TenDA Ddiem Sốgiờ

R1 1 0 0

R2 0 1

R3 1 0

B3

(15)

Nhập môn Cơ sở liệu - Khoa CNTT 15

MaNV TenNV MaDA TenDA Ddiem Sốgiờ

R1 1 0 0

R2 0 1

R3 1 0

B1,

MaNV TenNV MaDA TenDA Ddiem Sốgiờ

R1 1 0 0

R2 0 1

R3 1 0

B3

(16)

Phép tách không mát (tt)

Thuật toán 5.3: Tách quan hệ thành quan hệ

BCNF với tính chất nối không mát

 Đặt Dold := {R} ;

 FOR (lược đồ Q D)

- FOR EACH (Q |= X Y vi phạm BCNF )

 Dold := Dnew

(17)

Nhập môn Cơ sở liệu - Khoa CNTT 17

Phép tách không mát (tt)

 Kiểm tra lược đồ Q D vi phạm BCNF

- Cách 1: Với phụ thuộc hàm X  Y Q,

 Tính X+

 Nếu X+ không chứa tất thuộc tính Q X  Y vi

phạm BCNF X khơng phải siêu khóa

- Cách 2: dựa quan sát lược đồ quan hệ Q vi phạm BCNF có tồn cặp thuộc tính A,B Q cho {Q – {A,B}}  A

 Tính bao đóng {Q – {A,B}}+ cho mỗi cặp thuộc tính {A,B}

Q

(18)

Phép tách không mát (tt)

 Ví dụ: Xét lược đồ quan hệ

- R = { A, B, C, D, E, F)

- A  BCDEF, BC  ADEF, B F, D E, D B

 Có khóa dự tuyển A BC

 Ta có B  F vi phạm BCNF B khơng phải siêu khóa, R tách thành

- R1(B,F) với phụ thuộc hàm B F

 R2(A,B,C,D,E) với phụ thuộc hàm ACDE, BCADE, DE, DB

 Do D E vi phạm BCNF (D thuộc tính khơng khóa), R2 tách thành:

- R21(D,E) với phụ thuộc hàm D  E

- R22(ABCD) với phụ thuộc hàm A  BCD, BC AD, D B

 Do D B vi phạm BCNF (D thuộc tính khóa), R22 tách thành:

- R221(D,B)

- R222(A, C, D) với phụ thuộc hàm A  CD (phụ thuộc hàm BC  AD bị mất)  Tóm lại, ta có phép tách D = {R1, R21, R221, R222} Phép tách có tính chất

(19)

Nhập môn Cơ sở liệu - Khoa CNTT 19

Phép tách không mát (tt)

Thuật toán 5.4: tổng hợp quan hệ với tính chất

bảo tồn phụ thuộc nối khơng mát

- Tìm phủ tối thiểu G cho F

- Với vế trái X phụ thuộc hàm xuất

trong G tạo lược đồ quan hệ D với thuộc tính {X{A1}{A2}… {Ak}}, X A1, XA2,…, X Ak phụ thuộc hàm G với X vế trái (X khóa quan hệ này)

- Nếu khơng có lược đồ quan hệ D chứa

(20)

Dạng chuẩn 4- phụ thuộc đa trị

 Ví dụ

NHANVIEN(TENNV, TENDA, TENTHANNHAN)

NHÂNVIÊN TênNV TênDA TênconNV

Nam DA01 Lan

Nam DA02 Hoa

Nam DA01 Hoa

(21)

Nhập môn Cơ sở liệu - Khoa CNTT 21

Dạng chuẩn 4-pt đa trị (tt)

 Một phụ thuộc đa trị (MVD), ký hiệu X  Y , ràng buộc sau trạng thái quan hệ R: Nếu hai t1 t2 tồn R cho t1[X] = t2[X] hai t3 t4 tồn R với tính chất sau:

- t3[X] = t4[X] = t1[X] = t2[X]

- t3[Y] = t1[Y] t4[Y] = t2[Y]

(22)

Dạng chuẩn 4-pt đa trị (tt)

 Định nghĩa: Một lược đồ quan hệ R dạng chuẩn

4 (4NF) tập hợp phụ thuộc F (gồm

các phụ thuộc hàm phụ thuộc đa trị) với

phụ thuộc đa trị không tầm thường XY F+

(23)

Nhập môn Cơ sở liệu - Khoa CNTT 23

Dạng chuẩn 4-pt đa trị (tt)

Thuật toán Tách quan hệ thành quan hệ 4NF

với tính chất nối không mát

- Input: Một quan hệ vũ trụ R tập phụ thuộc hàm phụ thuộc đa trị F

1 Đặt D := {R};

2 Khi có lược đồ quan hệ Q D không 4NF, thực hiện:

 Chọn lược đồ quan hệ Q D không 4NF;

 Tìm phụ thuộc đa trị khơng tầm thường XY Q vi phạm 4NF;

(24)

Dạng chuẩn 5- pt nối

Một phụ thuộc nối (JD), ký hiệu JD(R1, R2, …, Rn) lược đồ quan hệ R ràng buộc trạng thái r R Ràng buộc tuyên bố trạng thái hợp pháp r R phải có phép tách có tính chất nối không mát thành R1, R2, …, Rn Điều nghĩa là:

* (R1(r), R2(r), , Rn(r)) = r

(25)

Nhập môn Cơ sở liệu - Khoa CNTT 25

Dạng chuẩn 5- pt nối (tt)

 ĐN: Một lược đồ quan hệ R dạng chuẩn

(5NF) (hoặc dạng chuẩn nối chiếu PJNF –

Project-Join normal form) tập F phụ thuộc hàm, phụ thuộc đa trị phụ thuộc nối với phụ thuộc nối không tầm thường JD(R1, R2, …, Rn F+, R

(26)

Tài liệu tham khảo

Giáo trình CSDL - Chương

Database management system

- Chapter 15

 Fundamentals of Database Systems

(27)

Ngày đăng: 28/12/2020, 10:30

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w