1. Trang chủ
  2. » Công Nghệ Thông Tin

Chương 8: Phụ thuộc hàm và dạng chuẩn pot

91 1,4K 3
Tài liệu đã được kiểm tra trùng lặp

Đ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 91
Dung lượng 1,22 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nội dung chi tiết Chất lượng của lược đồ CSDL quan hệ  Phụ thuộc hàm  Dạng chuẩn...  Đánh giá lược đồ quan hệ dựa trên tiêu chí không theo chuẩn - Ngữ nghĩa của các thuộc tính - Giả

Trang 1

Chương 8 Phụ thuộc hàm &

Dạng chuẩn

Trang 2

Nội dung chi tiết

 Chất lượng của lược đồ CSDL quan hệ

 Phụ thuộc hàm

 Dạng chuẩn

Trang 3

Chất lượng của lược đồ CSDL

QH

 Như thế nào là thiết kế 1 lược đồ quan hệ tốt/tồi?

 Đánh giá lược đồ quan hệ dựa trên tiêu chí (không theo chuẩn)

- Ngữ nghĩa của các thuộc tính

- Giảm giá trị trùng lắp trong các bộ

- Giảm giá trị null trong các bộ

- Không cho phép tồn tại các bộ dữ liệu sai (không xác

định)

Trang 4

Ngữ nghĩa của thuộc tính

 Làm thế nào để hiểu được giá trị của thuộc tính trong một bộ?

- Thiết kế lược đồ sao cho dễ dàng giải thích nghĩa của

- Giữ cho các thuộc tính trên quan hệ không được trùng

lắp

Trang 5

Trùng lắp dữ liệu

 Khi một phần của dữ liệu có thể suy ra từ một số phần dữ liệu khác, ta nói có sự trùng lắp dữ liệu

Trang 6

Khó khăn của thiết kế dữ liệu QH

Thiết kế dữ liệu quan hệ đòi hỏi thu thập các lược

đồ quan hệ tốt

Vì nếu lược đồ quan hệ là tồi

- Sẽ có nguy cơ dẫn tới trùng lắp thông tin

- Khó khăn trong việc thêm, xóa, sửa dữ liệu

Tênphim Nămsx Thờilượng Loạiphim Xưởngsx Diễnviên

Star Wars 1977 124 color Fox Carrie Fisher

Star Wars 1977 124 color Fox Mark Hamill

Star Wars 1977 124 color Fox Harrison Ford

Mighty Ducks 1991 104 color Disney Emilio Esteves

Wayne’s World 1992 95 color Paramount Dana Carvey

Wayne’s World 1992 95 color Paramount Mike Meyers

Trang 7

Phân rã lược đồ

 Phân rã là chia quan hệ gốc thành một vài quan hệ nhỏ hơn

- Mục đích: làm giảm sự trùng lắp thông tin

 Hai đặc tính quan trọng cần phải duy trì trong suốt quá trình phân rã

- Sự bảo toàn thông tin

• Có thể tìm được bất kỳ thể hiện nào của quan hệ gốc từ các quan hệ được phân rã

- Bảo toàn phụ thuộc

• Các ràng buộc trên quan hệ gốc phải được đảm bảo còn giữ

Trang 8

Ví dụ

Xét quan hệ Phim

Tênphim Nămsx Thờilượng Loạiphim Xưởngsx Diễnviên

Star Wars 1977 124 color Fox Carrie Fisher

Star Wars 1977 124 color Fox Mark Hamill

Star Wars 1977 124 color Fox Harrison Ford

Mighty Ducks 1991 104 color Disney Emilio Esteves

Wayne’s World 1992 95 color Paramount Dana Carvey

Wayne’s World 1992 95 color Paramount Mike Meyers

Bỏ sót cập nhật

Xóa luôn phim Thêm chính xác

Trang 9

Ví dụ

Tìm cách tách quan hệ Phim

Tênphim Nămsx Thờilượng Loạiphim Xưởngsx

Star Wars 1977 124 color Fox Mighty Ducks 1991 104 color Disney Wayne’s World 1992 95 color Paramount

Diễnviên

Carrie Fisher Mark Hamill Harrison Ford Emilio Esteves

Tênphim Nămsx

Star Wars 1977 Star Wars 1977 Star Wars 1977 Mighty Ducks 1991

Trang 10

Giá trị null trong các bộ

Giá trị null có thể xảy ra ở các trường hợp

- Thuộc tính không được áp dụng

- Giá trị tại thuộc tính chưa xác định

- Giá trị xác định, nhưng chưa nhập

 Vì thế

- Nhiều giá trị null được lưu trong nhiều bộ

- Tốn nhiều không gian lưu trữ

- Không chắc chắn cho ra kết quả mong muốn khi sử

dụng các hàm Sum, Count

Trang 11

Nội dung chi tiết

Trang 12

 PTH được phát biểu dựa trên

- Ngữ nghĩa của môi trường ứng dụng

- Qui tắc

Trang 13

Phụ thuộc hàm (tt)

PTH trên quan hệ R biểu diễn mối liên hệ giữa các

tập thuộc tính trong R

- Nếu 2 bộ của R có các giá trị giống nhau tại các thuộc

A’s B’s

Nếu Thì

A , A , …, A B , B , …, B

Trang 15

Ví dụ

Trang 16

Ví dụ

 Xét lược đồ quan hệ

 Và thể hiện

Phim(Tênphim, Nămsx, Thờilượng, Loạiphim, Xưởngsx, Diễnviên)

Tênphim Nămsx Thờilượng Loạiphim Xưởngsx Diễnviên Star Wars 1977 124 color Fox Carrie Fisher Star Wars 1977 124 color Fox Mark Hamill

Star Wars 1977 124 color Fox Harrison Ford

Mighty Ducks 1991 104 color Disney Emilio Esteves

Wayne’s World 1992 95 color Paramount Dana Carvey

Wayne’s World 1992 95 color Paramount Mike Meyers

Trang 17

Ví dụ (tt)

 Tìm được nhiều PTH

Tênphim, Nămsx → Diễnviên

Không là phụ thuộc hàm

Tênphim, Nămsx → Thờilượng Tênphim, Nămsx → Loại

Tênphim, Nămsx → Xưởngsx

Trang 18

Chú ý

 Xét thể hiện r1

Tênphim Nămsx Thờilượng Loạiphim Xưởngsx Diễnviên

Star Wars 1977 124 color Fox Carrie Fisher

Star Wars 1977 124 color Fox Mark Hamill

Star Wars 1977 124 color Fox Harrison Ford

Mighty Ducks 1991 104 color Disney Emilio Esteves

Wayne’s World 1992 95 color Paramount Dana Carvey

Wayne’s World 1992 95 color Paramount Mike Meyers

Tênphim → Loại

Trang 19

Chú ý (tt)

 Xét thể hiện r2

Tênphim Nămsx Thờilượng Loạiphim Xưởngsx Diễnviên

Star Wars 1977 124 color Fox Carrie Fisher

Star Wars 1977 124 color Fox Mark Hamill

Star Wars 1977 124 color Fox Harrison Ford

Mighty Ducks 1991 104 color Disney Emilio Esteves

Kingkong 1993 120 color Paramount Fay Wray

Kingkong 1993 120 black/white Paramount Robert Amstrong

Tênphim → Loại

PTH phải được định nghĩa trên lược đồ quan hệ

Trang 20

Hệ quả từ tập PTH

 Cho F là tập các PTH định nghĩa trên R

- Nếu có 1 PTH f khác cũng được thỏa với mọi thể hiện

của R

- Thì ta gọi f là hệ quả của F

Trang 22

Bao đóng của PTH

 Closure of a Set of Functional Dependencies

 Cho F là tập các PTH định nghĩa trên R

 Tập hợp các PTH hệ quả từ F được gọi là bao đóng của F

- Ký hiệu F +

Trang 23

Tìm bao đóng của F

 Từ tập F ban đầu ta sử dụng định nghĩa hình thức của PTH để tìm bao đóng F+

 Nếu F quá lớn, tìm F+ sẽ khó khăn và tốn thời gian

Trang 24

Suy dẫn từ tập PTH

 Cho trước một tập PTH trên 1 quan hệ

 Có thể suy luận “quan hệ phải thỏa một tập PTH khác nào đó”

 Khả năng suy dẫn nhằm khám phá thêm tập PTH

- Rất cần thiết để thiết kế các lược đồ quan hệ đạt chất lượng tốt

Trang 25

Ví dụ

 Xét lược đồ R(A,B,C) thỏa tập PTH

 Ta có thể suy diễn R còn thỏa PTH

F = { f1: A → B

f2: B → C }

f3: A → C

Trang 26

Luật dẫn Armstrong

 Luật phản hồi

Trang 27

Luật dẫn khác

 Luật bắc cầu giả

Nếu X → Y và X → Z Thì X → Y, Z

Nếu X → Y và Z ⊆ Y

Thì X → Z

Trang 28

Bao đóng của F (tt)

 Cho F là tập các PTH định nghĩa trên R

 Gọi f là một PTH được suy dẫn từ F

- Áp dụng luật dẫn cho các PTH trong F để có được f

 Tập hợp các PTH suy dẫn từ F ký hiệu F’

- Ta muốn F’ = F+

Trang 29

Tìm bao đóng của F (tt)

 Từ tập F ban đầu ta sử dụng các luật dẫn để tìm bao đóng F+

 Áp dụng luật dẫn vào F cho đến khi không không thể áp dụng được nữa

Trang 30

Với mỗi pth f trong F+

Áp dụng luật phản hồi và luật cộng trên f , thêm các pth kết quả vào F+

Với mỗi cặp pth f1 và f2 trong F+

Nếu f1 và f2 có thể kết nối lại bằng luật bắt cầu

Thì thêm pth kết quả vào F+

- Until F+ không thể thay đổi được nữa

Trang 32

Ví dụ

 A → B, B → H : A → H

 CG → H, CG → I: CG → HI

 A → C, CG → I : AG → I

Trang 33

- Tìm bao đóng F +

- Kiểm tra f có nằm trong F + không

 Tìm bao đóng F+ có hiệu quả ???

Trang 34

Nhận xét (tt)

 Chuyển sang bài toán thành viên

- Ta chỉ cần tìm bao đóng của tập thuộc tính X dựa trên F

- Kiểm tra Y có thuộc bao đóng của X hay không

Trang 35

Bao đóng của tập thuộc tính X

Là tập hợp những VP của các PTH có VT là X nằm trong F

Trang 36

Tìm bao đóng của X

(không còn thay đổi được nữa)

Tìm các PTH trong F có VT là các thuộc tính nằm trong X +

F

có VP không nằm trong X +

F

Trang 38

 Có D trong bao đóng

 Kết luận AB→D suy dẫn từ F

Trang 39

 Không có A trong bao đóng

 Kết luận D→A không suy dẫn từ F

Trang 40

Một số tính chất (tt)

- Hai tập PTH F1 và F2 gọi là tương đương

 Bổ đề

Mọi thể hiện của quan hệ

thỏa F1 ≡ Mọi thể hiện của quan hệ thỏa F2

F2 là hệ quả của F1

Trang 41

- F1 là hệ quả của F2 ⇒ F1 được suy dẫn từ F2

- F2 là hệ quả của F1 ⇒ F2 được suy dẫn từ F1

Trang 43

- F1 là hệ quả của F2 ⇒ F1 được suy dẫn từ F2

- F2 là hệ quả của F1 ⇒ F2 được suy dẫn từ F1

Trang 44

Ví dụ

 {A→BCDE} → {A→BC, A→D, CD→E}

- Xét CD→ E không thuộc trong F2

- F1 không được suy dẫn từ F2

- F1 không là hệ quả của F2

 {A→BC, A→D, CD→E} → {A→BCDE}

- Xét F2 có A → E

Trang 46

Một số khái niệm

Trang 47

Một số khái niệm (tt)

Trang 49

Một số khái niệm (tt)

 PTH thừa

Trang 52

Thuật toán tìm tập pth nhỏ nhất G dựa trên F

4 For each remaining FD X A in G

If (G – {X A }) is equivalent to G,

then remove X A from G.

Trang 56

Ví dụ (tt)

 F = { A→C, A→B, B→C }

 Có thể bỏ phụ thuộc hàm thừa nào?

Trang 57

Khái niệm khóa

Trang 58

40 40 50

b c d

- ABC, ABD, ACD, BCD

- AB, AC, AD, BC, BD, CD

Trang 59

Khái niệm khóa (tt)

 Định nghĩa (theo PTH)

- Cho quan hệ Q và tập PTH F định nghĩa trên Q

- K ⊆ Q+ là một khóa của Q nếu

• (i) f: K → Q + ∈ F+ (K+ = Q+)

• (ii) ¬∃ K’ ⊂ K | K’ → Q+

Trang 61

• Nối một nút PTH (thuộc tính) đến một nút thuộc tính (PTH)

• Cung xuất phát từ nút thuộc tính A đến một nút PTH f, cùng với một cung từ nút PTH f đến nút thuộc tính B, biểu diễn cho PTH A → B

 Khi F có nhiều PTT, đồ thị của F có chứa chu trình

Trang 63

tổ hợp có chứa Ki

 Vấn đề

Trang 64

Ứng dụng PTH vào khóa

 Giới hạn số lượng tổ hợp

 Thuộc tính nguồn

• A là một thuộc tính nguồn nếu ¬∃ f : X→ Y ∈ F | A ∈ Y

• Trên đồ thị PTH, thuộc tính nguồn không có cung vào

• Nhận xét: mọi thuộc tính nguồn phải xuất hiện trong mọi khóa của Q

 Thuộc tính đích

• B là một thuộc tính đích nếu ¬∃ f : X→ Y ∈ F | B ∈ X

• Trên đồ thị PTH, thuộc tính đích chỉ có cung vào, không

có cung ra

• Nhận xét: thuộc tính đích không xuất hiện trong bất kỳ

khóa nào của Q

Trang 65

Ví dụ

F= {f1: AD→B; f2:EG →A; f3: BC →G}

Xác định các khóa của Q?

Trang 67

Ví dụ

 Không có thuộc tính đích

 Có 3 thuộc tính nguồn: E, D, C

 Có một chu trình qua các nút G, A, B Các tổ hợp có thể xây dựng: G, A, B, GA, GB, AB, GAB

Trang 68

Nội dung chi tiết

Trang 69

Dạng chuẩn (Nomal Form)

 Được sử dụng để chuẩn hóa quan hệ

 Đáp ứng các mục tiêu thiết kế

- Giảm tối đa trùng lắp thông tin

- Kiểm tra RBTV dễ dàng

Trang 70

8 6

Trang 71

PG36 PG16

ngàyTrả

31/8/04 1/9/05 10/6/03 1/12/04 10/8/06

Giá

350 450 350 375 450

chủID

CO40 CO93 Co40 CO93 Co93

chủTên

X Y X Y Y

Không chuẩn (giá trị tại 1 trường không nguyên tố)

Trang 73

8 6

11A2 T T C Toán 7

DS_Họcsinh Điểm_Họcsinh_Lớp

Trang 74

UNF 1NF

 Biến đổi thành các giá trị nguyên tố

Trang 75

UNF 1NF

 Tách quan hệ

Trang 76

31/8/04 1/9/05 10/6/03 1/12/04 10/8/06

Giá

350 450 350 375 450

chủID

CO40 CO93 CO40 CO93 CO93

chủTên

X Y X Y Y CR76

CR76

Trang 78

1NF 2NF

Xét quan hệ Thuê_Phòng

- Khóa: kháchID, phòngID

- Còn có 1 PTH

- Làm xuất hiện PTH không đầy đủ vào khóa

kháchID, phòngID phòngĐChỉ, ngàyThuê,

ngàyTrả, giá, chủID, chủTên

phòngID phòngĐChỉ, chủID, chủTên

Trang 79

1NF 2NF

phòngID

PG04 PG16 PG36

chủID

CO40 CO93 CO93

chủTên

X Y Y

Phòng

kháchID phòngID

PG04 PG16 CR56 PG04 CR56 PG36

ngàyThuê

1/6/03 1/9/04 1/9/02 10/10/03

ngàyTrả

31/8/04 1/9/05 10/6/03 1/12/04

CR76 CR76

Thuê

Trang 80

1NF 2NF

1NF

2NF

Trang 81

Nhận xét 2NF

 Vẫn còn trùng lắp thông tin

phòngID

PG04 PG16 PG36

chủID

CO40 CO93 CO93

chủTên

X Y Y

Phòng

Trang 82

2NF 3NF

 Lược bỏ những PTH bắc cầu

 Quan hệ đạt 3NF

- Đạt 2NF

- Các thuộc tính không khóa không phụ thuộc bắc cầu

vào thuộc tính khóa

Trang 84

2NF 3NF

Tách quan hệ Phòng

phòngID

PG04 PG16 PG36

chủID

CO40 CO93 CO93

Phòng

chủID

CO40 CO93

chủTên

X Y

Chủ

Trang 85

2NF 3NF

2NF

3NF

Trang 86

Nhận xét 3NF

 Vẫn còn trùng lắp thông tin

kháchID phòngID

PG04 PG16 CR56 PG04 CR56 PG36

ngàyThuê

1/6/03 1/9/04 1/9/02 10/10/03

ngàyTrả

31/8/04 1/9/05 10/6/03 1/12/04

CR76 CR76

Thuê

nhânviênID

SG37 SG24 SG37 SG05

nhânviênID phòngID

Trang 88

3NF BCNF

Xét quan hệ Thuê

- Khóa: kháchID, phòngID

- Có PTH VT không chứa khóa

kháchID, phòngID ngàyThuê, ngàyTrả, nhânviênID

nhânviênID phòngID

Trang 89

1/6/03 1/9/04 1/9/02 10/10/03

ngàyTrả

31/8/04 1/9/05 10/6/03 1/12/04

CR76 CR76

Thuê

nhânviênID

SG37 SG24 SG37 SG05

Trang 90

3NF BCNF

3NF

BCNF

Ngày đăng: 24/07/2014, 02:21

TỪ KHÓA LIÊN QUAN

w