Slide Nhập môn cơ sở dữ liệu – Chương 4.1 – Chuẩn hóa cơ sở dữ liệu quan hệ – Nguyễn Hà Nam – UET – Tài liệu VNU

50 46 1
Slide Nhập môn cơ sở dữ liệu – Chương 4.1 – Chuẩn hóa cơ sở dữ liệu quan hệ – Nguyễn Hà Nam – UET – Tài liệu VNU

Đ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

 nó đảm bảo rằng từng phụ thuộc hàm sẽ được biểu hiện trong các quan hệ riêng rẽ nhận được sau khi tách.. Dạng chuẩn 3[r]

(1)

Chương

(2)

Nội dung chi tiết

 Giới hạn ER

 Sự dư thừa

 Phụ thuộc hàm

 Hệ suy diễn Amstrong

 Thuật tốn tìm bao đóng X+ F  Tìm phủ tối thiểu

(3)

Giới hạn lược đồ ER

 Cung cấp tập hướng dẫn  không đưa tới lược đồ CSDL

 Không đưa cách đánh giá lược đồ khác

(4)

Sự dư thừa

 Sự phụ thuộc thuộc tính gây dư thừa

- Ví dụ:

 Điểm môn học  Điểm trung bình  xếp loại  Địa  zip code

TENPHG MAPHG TRPHG NG_NHANCHUC

Nghien cuu 333445555 05/22/1988 Dieu hanh 987987987 01/01/1995 Quan ly 888665555 06/19/1981

TENNV HONV

Tung Nguyen Hung Nguyen 333445555

987987987 888665555

MANV

Vinh Pham

… …

(5)

Sự dư thừa (tt)

 Thuộc tính đa trị lược đồ ER  nhiều số liệu lược đồ quan hệ

 Ví dụ:

NHANVIEN(TENNV, HONV, NS,DCHI,GT,LUONG, BANGCAP)

TENNV HONV NS DCHI GT LUONG BANGCAP

Tung Nguyen 12/08/1955 638 NVC Q5 Nam 40000

(6)

Sự dư thừa (tt)

 Sự dư thừa  dị thường

- Thao tác sửa đổi: cập nhật tất giá trị liên quan

- Thao tác xóa: người cuối đơn vị  thông tin đơn vị

- Thao tác chèn

TENPHG MAPHG TRPHG NG_NHANCHUC

Nghien cuu 333445555 05/22/1988 Dieu hanh 987987987 01/01/1995 Quan ly 888665555 06/19/1981

TENNV HONV

Tung Nguyen Hung Nguyen 333445555

987987987 888665555

MANV

Vinh Pham

… …

(7)

Sự dư thừa (tt)

 Các giá trị không xác định

- Đặt thuộc tính Trưởng phịng vào quan hệ NHANVIEN

thay vào quan hệ PHONGBAN

 Các giả

(8)

Sự dư thừa (tt)

 Một số nguyên tắc

- NT1: Rõ ràng mặt ngữ nghĩa, tránh phụ thuộc

các thuộc tính với

- NT2: Tránh trùng lặp nội dung đảm bảo tránh dị thường thao tác cập nhật liệu

 Phải có số thao tác thêm cập nhật vào lược đồ quan hệ, gây sai hỏng trường hợp xóa bỏ

- NT3: Tránh đặt thuộc tính có nhiều giá trị Null

 Khó thực phép nối kết hợp

(9)

Phụ thuộc hàm

 Lý thuyết chuẩn hóa

- Các phân tích để đưa lược đồ thực thể liên kết cần phải sửa chữa bước

- Vấn đề nêu slide giải có

phương pháp phân tích thích hợp

(10)

Phụ thuộc hàm (tt)

 ĐN 1: Phụ thuộc hàm (FD-function dependancy) lược đồ quan hệ R ràng buộc XY, với X Y tập thuộc tính R

 ĐN 2: (XY) với thể r lược đồ quan hệ R: với t s r t[X]= s[X] t[Y]=s[Y]

 Ví dụ: Ràng buộc liệu trường hợp đặc biệt phụ thuộc hàm

(11)

Phụ thuộc hàm (tt)

 Ví dụ

- Ngày sinh Tuổi - Tuổi Quyền lợi - MaNV Tên NV

(12)

Phụ thuộc hàm (tt)

 Ví dụ:

- Ta có lược đồ quan hệ

MUON( SoTHE, MaSACH, NGUOIMuon, TenSACH, THOIGIAN)

- Với phụ thuộc hàm: SoTHE  NGUOIMuon MaSACH  TenSACH

SoTHE, MaSACH  THOIGIAN

- Có sơ đồ phụ thuộc hàm sau:

(13)

Phụ thuộc hàm (tt)

 ĐN bao đóng: Nếu F tập FD lược đồ R

và f FD khác R, F coi bao f với thể r R thỏa mãn FD F thỏa mãn f

- Ví dụ F={AB, BC} f={AC}

- F={ĐToan, DLy, DHoaDTB, DTBXepHang},

f={DT,DL,DHXepHang}

 Bao đóng tập F(Ký hiệu F+) tập FD

suy diễn từ F

(14)

Phụ thuộc hàm (tt)

 Ký hiệu F |= X Y: phụ thuộc hàm X Y suy diễn từ tập phụ thuộc hàm F

 QT1 (quy tắc phản xạ) : Nếu X  Y X  Y

 QT2 (quy tắc tăng) : { X Y } |= XZ YZ

 QT3 (quy tắc bắc cầu) : { X Y, Y Z } |= X Z

 QT4 (quy tắc chiếu) : { XYZ } |= X Y X Z

 QT5 (quy tắc hợp) : { X Y , X Z } |= X YZ

(15)

Hệ suy diễn Amstrong

 Quy tắc suy diễn Amstrong đưa cách thức để tính tốn kiểm tra thuộc tính tập FD

 Bao gồm quy tắc 1-3(phản xạ, tăng, bắc cầu)

- QT1 (quy tắc phản xạ) :

 TenNV, DChi TenNV - QT2 (quy tắc tăng) :

 MaNVTenNV MaNV, NSTenNV, NS

- QT3 (quy tắc bắc cầu) : { X Y, Y Z } |= X Y

(16)

Hệ suy diễn Amstrong (tt)

 Hệ Ams đúng: FD f:XY suy diễn từ tập FD F sử dụng quy tắc suy diễn f nằm quan hệ mà thỏa mãn tất FD F

 Ví dụ Cho biết XY XZ

 XXY (quy tắc tăng theo X)

 YXYZ (quy tắc tăng theo Y)

 XYZ (bắc cầu)

(17)

Hệ suy diễn Amstrong (tt)

 Hệ Ams đầy đủ: Nếu F bao f, f suy diễn từ F sử dụng hệ quy tắc suy diễn

 Kết rút từ tính đầy đủ

có thuật tốn để xác định xem F có bao f hay khơng

- Bản chất thuật tốn sử dụng hệ suy diễn theo tất

(18)

Hệ suy diễn Amstrong (tt)

 Hệ Ams xác: Khái niệm đầy đủ liên kết thành chuỗi ý nghĩa đầy đủ tính xác hệ suy diễn Amstrong (định nghĩa thể quan hệ)

(19)

Hệ suy diễn Amstrong (tt)

 Tìm F+

 Tất FD bao gồm ABBD, ABBCD,

(20)

Thuật tốn tìm bao đóng X+ F  Xác định thuộc tính đóng cách hiệu để tìm

bao đóng

 Tập thuộc tính đóng tập thuộc tính (X) với điều kiện thỏa mãn tập FD (F) (ký hiệu X+

F)

tập tất thuộc tính (A) cho XA

 Gọi tập thuộc tính phụ thuộc hàm vào X F

 X+

F1 không thiết phải X+F2 F1<>F2

(21)

Ví dụ

(22)

Thuật tốn tìm bao đóng X+

F(tt)

 X+ = X;

Repeat

- Old X+ = X+ ;

- Với phụ thuộc hàm Y  Z F thực

 X+  Y X+ = X+  Z;

until ( X+ = Old X+ );

(23)

Ví dụ

 Xác định bao đóng

 Bài tốn: Tìm bao đóng AB với phụ thuộc hàm sau

 Giải

- Khởi tạo: X+ ={AB}

- Dùng (a): X+ ={ABC}

(24)

Phụ thuộc hàm tương đương

 Một tập hợp phụ thuộc hàm E phủ tập phụ thuộc hàm F(hoặc F phủ E)

- phụ thuộc hàm E F+

- phụ thuộc hàm E suy diễn từ F

 Hai tập phụ thuộc hàm E F tương đương E+ = F+

- Như tương đương có nghĩa phụ thuộc hàm

(25)

Ví dụ

 Xét hai tập phụ thuộc hàm

- F = {A C, AC  D, EAD, E H }

- E = { A CD, E  AH }

(26)

Phụ thuộc hàm tối thiểu

 Định nghĩa: tập FD gọi tối thiểu thỏa mãn điều kiện sau

- Vế phải FD F có thuộc tính

- Khơng thể thay XA YA với điều kiện Y tập X giữ tập phụ thuộc mà tương đương với F

(27)

Phụ thuộc hàm tối thiểu (tt)

Thuật tốn tìm phủ tối thiểu

1. G := F;

2. Thay X  {A1, A2, , An} G bằng n

phụ thuộc hàm X  A1, X  A2, … , X  An

3. Với X  A G

1 Với thuộc tính B phần tử X

1 Nếu ((G – (X  A)((X  {B})  A) tương đương với G

2 thay XA (X – {B})A G

4. Với phụ thuộc hàm XA lại G

(28)

Ví dụ

Tìm phủ tối thiểu cho tập phụ thuộc hàm:

{A  BC, B  AC, C  AB}

Áp dụng thuật tốn trên, có

 B1: G= {A  BC, B  AC, C  AB}

 B2: G = {A  B, A  C, B  A, B  C, C  A, C  B}

 B3:

- Do AB BC nên AC thừa Do CB BA nên CA thừa Bỏ phụ thuộc hàm thừa đi, ta có {AB, BA, BC, CB} phủ tối thiểu

(29)

Thuật tốn tìm khóa

 Tìm khóa K R dựa tập phụ thuộc hàm F

- Đặt K := R;

- Với thuộc tính A K

 {tính (K-A)+ F;

 Nếu (A)+ chứa tất thuộc tính R đặt K := K-{A}};

 Cách

- Tìm siêu khóa S:

 Tìm RF tập thuộc tính vế trái

 Tìm bao đóng tập RF

(30)

Các dạng chuẩn

 Mỗi dạng chuẩn tập điều kiện lược đồ nhằm đảm bảo tính chất (liên quan tới dư thừa bất thường cập nhật)

 Chuẩn hóa liệu: q trình phân tích lược đồ quan hệ dựa FD khóa để đạt

- Cực tiểu dư thừa

(31)

Các dạng chuẩn (tt)

 Thủ tục chuẩn hoá cung cấp

- Một cấu hình thức để phân tích lược đồ quan hệ

dựa khố các phụ thuộc hàm các thuộc tính

- Một loạt kiểm tra dạng chuẩn thực lược đồ quan hệ riêng rẽ cho sở liệu quan hệ chuẩn hố đến mức cần thiết

 Tính chất

- Nối khơng mát (hoặc nối không phụ thêm)- vd:bộ giả - Bảo toàn phụ thuộc

(32)

Các dạng chuẩn (tt)

 Phân loại

- Boyce Codd đề nghị dạng

 1NF (first normal form): tương đương với định nghĩa lược đồ quan hệ (quan hệ bộ)

 2NF: ko có giá trị thực tiễn

 3NF  BCNF: thường sử dụng nhiều

(33)

Dạng chuẩn

 Đn: gọi 1NF miền giá trị thuộc tính chứa giá trị nguyên tử (đơn, ko phân chia được) giá trị thuộc tính giá trị đơn lấy từ miền giá trị

 Ví dụ

PHONGBAN( MaPHG, TenPHG, DDIEM)

PHONGBAN(MaPHG, TenPHG)

DDIEM_PHG(MaPHG, DDIEM)

(34)

Dạng chuẩn (tt)

 Lược đồ gốc:

Table (Key1, aaa (Key2, bbb (Key3, ccc .) ) )

 Để thỏa mãn 1NF thực

Table (Key1, (Key2, (Key3, ) ) )

Table1(Key1, ) TableA (Key1,Key2 (Key3, ) )

(35)

Dạng chuẩn (tt)

 Vấn đề tồn 1NF

 Xét lược đồ

DDIEM_PHG(MaPHG, DDIEM)

- Vẫn bị lặp lại

- Ẩn chứa phụ thuộc hàm

bộ phận - DIADIEM MAPHG 5 TP HCM VUNGTAU NHATRANG HA NOI

(36)

Dạng chuẩn

 Phụ thuộc hàm đầy đủ: Một phụ thuộc hàm X  Y phụ thuộc hàm đầy đủ loại bỏ thuộc tính A khỏi X phụ thuộc hàm khơng

∀ A, A  X, (X – {A})  Y : sai

 Phụ thuộc hàm phận: Một phụ thuộc hàm X  Y phụ thuộc phận bỏ thuộc tính A X, khỏi X phụ thuộc hàm đúng, điều có nghĩa với

(37)

Dạng chuẩn (tt)

 2NF:

- Thỏa mãn 1NF

- Phụ thuộc hàm đầy đủ vào khóa

 Với quan hệ có thuộc tính khóa đơn ko phải xét

(38)

Dạng chuẩn (tt)

 Ví dụ

NV_DA(MaNV, MaDA, Sogio, TenDA, DDiemDA)

Phụ thuộc vào MaNV, MaDA

(39)

Dạng chuẩn (tt)

 Ví dụ

NV_DA(MaNV, MaDA, Sogio, TenDA, DDiemDA)

Phụ thuộc vào MaNV, MaDA

Chỉ phụ thuộc vào MaDA

NV_DA(MaNV, MaDA, Sogio)

(40)

Dạng chuẩn

 3NF dựa khái niệm phụ thuộc bắc cầu

 ĐN: Một lược đồ quan hệ R 3NF thoả

mãn ( theo Codd)

- Thỏa mãn 2NF

(41)

Dạng chuẩn (tt)

NV_DV(MaNV, TenNV, NS, DCHI, MaDV, TenDV, TruongPHG)

Phụ thuộc vào MaNV

Phụ thuộc vào MaDV

 Tất thuộc tính phải phụ thuộc vào thuộc tính

khóa

- Một vài thuộc tính phụ thuộc vào thuộc tính ko phải

khóa

- Chuẩn hóa  Tách nhóm thuộc tính thành quan

(42)

Dạng chuẩn (tt)

Phụ thuộc vào MaNV

Phụ thuộc vào MaDV

NHANVIEN(MaNV, TenNV, NS, DCHI, MaDV)

(43)

Tóm tắt dạng chuẩn 1-3

NF Nhận biết Cách chuẩn hóa

1 Quan hệ ko có thuộc tính đa trị quan hệ lặp

Chuyển tất quan hệ lặp đa trị thành quan hệ

2 Phụ thuộc phần vào thuộc tính khóa

Tách thuộc tính phụ thuộc phần thành lược đồ mới, đảm bảo quan hệ với lược đồ liên quan

3 Phụ thuộc ẩn, tồn phụ thuộc hàm thuộc tính ko phải khóa

(44)

Dạng chuẩn Boyce-Codd

 Một lược đồ quan hệ R gọi dạng chuẩn

Boyce-Codd (BCNF)

- Thỏa mãn dạng chuẩn 3NF

- Khơng có thuộc tính khóa phụ thuộc hàm thuộc tính khơng khóa

(45)

Dạng chuẩn Boyce-Codd(tt)

 Ví dụ:

R (A1,A2,A3,A4,A5)

Với phụ thuộc hàm:

- A1,A2  A3,A4,A5

(46)

Dạng chuẩn Boyce-Codd(tt)

 Nếu lược đồ quan hệ không thoả mãn điều kiện BCNF, thủ tục chuẩn hóa bao gồm:

- Loại bỏ thuộc tính khóa phụ thuộc hàm vào thuộc tính

khơng khóa khỏi quan hệ

- tách chúng thành quan hệ riêng có khố thuộc tính khơng khóa gây phụ thuộc

 Ví dụ trên: R (A1,A2,A3,A4,A5) Với phụ thuộc hàm:

- A1,A2  A3,A4,A5

- A4  A2

(47)

SV_MH_GV(MaSV, MONHOC, GIANGVIEN, …)

Dạng chuẩn Boyce-Codd(tt)

Phụ thuộc vào MONHOC

 Ví dụ

(48)

Dạng chuẩn Boyce-Codd(tt)

Phụ thuộc vào MONHOC

SV_MH_GV(MaSV, MaMH, MaGV, …)

 Ví dụ

Phụ thuộc vào MaSV, MaMH

MH_GV(MaGV, MaMH)

(49)

Tài liệu tham khảo

Giáo trình CSDL

- Chương

Database management system

- Chapter 15

Fundamentals of Database Systems

(50)

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