Nhập môn Cơ sở Dữ liệu

Phụ thuộc hàm và
Chuẩn hóa CSDL quan hệ

02:44 AM

Khoa CNTT

1
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

• Một số vấn đề lý thuyết thiết kế để có lược đồ
tốt.
• M...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

Nội dung chính

 Sự dư thừa và dị thường dữ liệu
 Phụ t...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.1

Nhập môn Cơ sở Dữ liệu

- Sự dư thừa và dị thường dữ liệu

Ví dụ 1: NHANVIEN_...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.1

Nhập môn Cơ sở Dữ liệu

- Sự dư thừa và dị thường dữ liệu
Dư thừa

Ví dụ 2

0...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.1

Nhập môn Cơ sở Dữ liệu

- Sự dư thừa và dị thường dữ liệu

Ví dụ 3

Dư thừa

...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.1

- Sự dư thừa và dị thường dữ liệu
 Sự phụ thuộc lẫn nhau giữa các thuộc tính...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.1

Nhập môn Cơ sở Dữ liệu

- Sự dư thừa và dị thường dữ liệu
1. Lãng phí không g...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

4.2 - Một số nguyên tắc thiết kế lược đồ

Nguyên tắc 1 : ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.3

Nhập môn Cơ sở Dữ liệu

– Phụ thuộc hàm

Định nghĩa:
Cho lược đồ quan hệ R; X...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.3

Nhập môn Cơ sở Dữ liệu

– Phụ thuộc hàm

Ví dụ:
SINHVIEN(Masv, Ho, Dem,Ten, N...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.3

Nhập môn Cơ sở Dữ liệu

– Phụ thuộc hàm

Thể hiện phụ thuộc hàm trên lược đồ
...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.4

– Quy tắc suy diễn

Cho lược đồ R (A),

Nhập môn Cơ sở Dữ liệu

Phụ thuộc hàm...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.4

– Quy tắc suy diễn

Nhập môn Cơ sở Dữ liệu

Phụ thuộc hàm

Quy tắc 1 (quy tắc...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.4

– Quy tắc suy diễn

Nhập môn Cơ sở Dữ liệu

Phụ thuộc hàm

Chứng minh
Quy tắc...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.4

– Quy tắc suy diễn

Chứng minh

Nhập môn Cơ sở Dữ liệu

Phụ thuộc hàm

Quy tắ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.4

– Quy tắc suy diễn

Chứng minh

Nhập môn Cơ sở Dữ liệu

Phụ thuộc hàm

Quy tắ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.4

– Quy tắc suy diễn

Phụ thuộc hàm

Chứng minh Quy tắc 4 (quy tắc chiếu):

The...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.4

– Quy tắc suy diễn

Chứng minh

Nhập môn Cơ sở Dữ liệu

Phụ thuộc hàm

Quy tắ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.4

– Quy tắc suy diễn

Nhập môn Cơ sở Dữ liệu

Phụ thuộc hàm

Quy tắc 4-6 có thể...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.5

Nhập môn Cơ sở Dữ liệu

– Bao đóng của tập Phụ thuộc hàm
Đinh nghĩa: Cho lược...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.5

Nhập môn Cơ sở Dữ liệu

– Bao đóng của tập Phụ thuộc hàm

ví dụ: BANGDIEM(Mas...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.5

Nhập môn Cơ sở Dữ liệu

– Bao đóng của tập Phụ thuộc hàm
ví dụ:

F= {ABC; A...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

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

Định nghĩa : Cho lược ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.6

Nhập môn Cơ sở Dữ liệu

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

Bổ đề: X Y được suy d...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.6

Nhập môn Cơ sở Dữ liệu

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

Ví dụ 2: Cho

F ={ A ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.6

Nhập môn Cơ sở Dữ liệu

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

Thuật toán tìm bao đón...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.6

Nhập môn Cơ sở Dữ liệu

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

Ví dụ 1: Tìm bao đóng ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.6

Nhập môn Cơ sở Dữ liệu

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

Ví dụ 2: Cho

G}

F

...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.6

Nhập môn Cơ sở Dữ liệu

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

Ví dụ 3: Cho

F ={ AG ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.6

Nhập môn Cơ sở Dữ liệu

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

Ví dụ 4: Cho

F ={ A ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

Bài tâp
Bài tâp 1: Hãy chứng minh các suy diễn sau

bằng ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

Bài tâp
Bài tâp 1: Hãy chứng minh các suy diễn sau

2. {X...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

Bài tâp
Bài tâp 1: Hãy chứng minh các suy diễn sau

3. {X...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

Bài tâp
Bài tâp 1: Hãy chứng minh các suy diễn sau

4. {X...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

Bài tâp
Bài tâp 1: Hãy chứng minh các suy diễn sau

5. {X...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

Bài tâp
Bài tâp 2: Cho R với tập phụ thuộc hàm

F ={ AB ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.7

Nhập môn Cơ sở Dữ liệu

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

Định nghĩa:
• Một tập ph...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.7

Nhập môn Cơ sở Dữ liệu

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

Cho hai tập phụ thuộc hà...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.7

Nhập môn Cơ sở Dữ liệu

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

F = {A →C, AC → D, E→AD,...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.7

Nhập môn Cơ sở Dữ liệu

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

F = {A →C, AC → D, E→AD,...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

– Phụ thuộc hàm tương đương
F = {A →C, AC → D, E→AD, E →H...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.8

Nhập môn Cơ sở Dữ liệu

– Tập phụ thuộc hàm tối thiểu

Đị nh nghĩa:

Tập phụ ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.8

Nhập môn Cơ sở Dữ liệu

– Tập phụ thuộc hàm tối thiểu

Phủ tố i thiể u

Tập p...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.8

Nhập môn Cơ sở Dữ liệu

– Tập phụ thuộc hàm tối thiểu
Thuật toán tìm phủ tối ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

Ví dụ: Tìm phủ tối thiểu

F = {A →BC, B → AC, C→AB, AC →D...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

4.9 – Bao đóng và khóa

 Siêu khóa, khóa, khóa chính và ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.10 –

Nhập môn Cơ sở Dữ liệu

Các dạng chuẩn dựa trên khóa chính

 Chuẩ n là gì...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.10 –

Nhập môn Cơ sở Dữ liệu

Các dạng chuẩn dựa trên khóa chính

Thủ tục chuẩn ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

a. Dạng chuẩn 1

Nhập môn Cơ sở Dữ liệu

(1NF)

Một quan hệ gọi là 1NF nếu
•

Miề...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

a. Dạng chuẩn 1
Ví dụ:

NV_DA

Mada

Manv

Sogio

CO1

Cấ...
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ

Nhập môn Cơ sở Dữ liệu

a. Dạng chuẩn 1

02:44 AM

Khoa CNTT

52
Phụ thuộc hàm và chuẩn hóa CSDL quan hệ
4.10 –

Nhập môn Cơ sở Dữ liệu

Các dạng chuẩn dựa trên khóa chính

02:44 AM

Khoa...
Upcoming SlideShare
Loading in …5
×

C4 1

1,123 views

Published on

Published in: Education
  • Be the first to comment

C4 1

  1. 1. Nhập môn Cơ sở Dữ liệu Phụ thuộc hàm và Chuẩn hóa CSDL quan hệ 02:44 AM Khoa CNTT 1
  2. 2. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu • Một số vấn đề lý thuyết thiết kế để có lược đồ tốt. • Một lược đồ tốt được thể hiện qua2 mức: o Mức khái niệm (hay logic):ngữ nghĩa rõ ràng,dễ hiểu, chính xác... o Mức cài đặt: các bộ được lưu trữ như thế nào.. • Lý thuyết chuẩn hóa (dựa trên phụ thuộc hàm, …) sẽ là nền tảng cơ sở để thực hiện việc phân tích và chuẩn hóa lược đồ. 02:44 AM Khoa CNTT 2
  3. 3. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu Nội dung chính  Sự dư thừa và dị thường dữ liệu  Phụ thuộc hàm  Hệ suy diễn Amstrong  Thuật toán tìm bao đóng X+F  Tìm phủ tối thiểu  Các dạng chuẩn 02:44 AM Khoa CNTT 3
  4. 4. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.1 Nhập môn Cơ sở Dữ liệu - Sự dư thừa và dị thường dữ liệu Ví dụ 1: NHANVIEN_PHONG Dư thừa về Đơn vị / Người quản lý 02:44 AM Khoa CNTT 4
  5. 5. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.1 Nhập môn Cơ sở Dữ liệu - Sự dư thừa và dị thường dữ liệu Dư thừa Ví dụ 2 02:44 AM Khoa CNTT 5
  6. 6. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.1 Nhập môn Cơ sở Dữ liệu - Sự dư thừa và dị thường dữ liệu Ví dụ 3 Dư thừa 02:44 AM Khoa CNTT 6
  7. 7. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.1 - Sự dư thừa và dị thường dữ liệu  Sự phụ thuộc lẫn nhau giữa các thuộc tính Nhập môn Cơ sở Dữ liệu Tại sao có sự dư thừa ?? Ví dụ: Điểm các môn học  Điểm trung bình  xếp loại Mã phòng ->Tên phòng, người quản lý  Thuộc tính đa trị trong lược đồ ER  nhiều bộ Ví dụ: NHANVIEN(TENNV, HONV, NS,DCHI,GT,LUONG, BANGCAP) 02:44 AM Khoa CNTT 7
  8. 8. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.1 Nhập môn Cơ sở Dữ liệu - Sự dư thừa và dị thường dữ liệu 1. Lãng phí không gian nhớ 2. Dị thường cập nhật : • • Thao tác xóa: người cuối cùng của đơn vị  mất thông tin về đơn vị • 02:44 AM Thao tác sửa đổi: cập nhật tất cả các giá trị, bộ liên quan Thao tác chèn Khoa CNTT 8
  9. 9. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu 4.2 - Một số nguyên tắc thiết kế lược đồ Nguyên tắc 1 : Rõ ràng về ý nghĩa (quan hệ, thuộc tính), tránh các phụ thuộc (về ý nghĩa) giữa các thuộc tính với nhau Mỗi lược đồ quan hệ tương ứng với một kiểu thực thể hoặc một liên kết Nguyên tắc 2 : Tránh các khả năng phát sinh dị thường cập nhật trong các quan hệ Tránh dư thừa, trùng lặp thông tin. Nếu có xuất hiện dị thường phải đảm bảo thao tác cập nhật thực hiện đúng đắn Nguyên tắc 3 : Tránh đặt các thuộc tính có nhiều giá trị Null Nguyên tắc 4 : Các lược đồ quan hệ kết nối với điều kiện bằng trên các thuộc tính nên là khoá chính hoặc khoá ngoài theo cách đảm bảo không sinh ra các bộ “giả” 02:44 AM Khoa CNTT 9
  10. 10. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.3 Nhập môn Cơ sở Dữ liệu – Phụ thuộc hàm Định nghĩa: Cho lược đồ quan hệ R; X, Y là các tập thuộc tính trên R. Một phụ thuộc hàm giữa X và Y được kí hiệu X Y là một ràng buộc: Với mỗi thể hiện r của lược đồ quan hệ R, với 2 bộ bất kỳ t1 và t2 trong r nếu có t1[X]= t2[X] thì t1[Y]=t2[Y] (tức là 2 bộ bất kỳ bằng nhau trên X thì cũng bằng nhau trên Y) Ta nói Y phụ thuộc hàm vào X hay X xác định hàm Y ; X gọi là vế trái, Y là vế phải của phụ thuộc hàm Phụ thuộc hàm là tính chất ngữ nghĩa trên các thuộc tính của lược đồ, được xác định khi thiết kế chứ không suy đoán trên một thể hiện của lược đồ 02:44 AM Khoa CNTT 10
  11. 11. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.3 Nhập môn Cơ sở Dữ liệu – Phụ thuộc hàm Ví dụ: SINHVIEN(Masv, Ho, Dem,Ten, Ngaysinh, Noisinh, Lop) Phụ thuộc hàm: Masv  Ho, Dem,Ten, Ngaysinh, Noisinh, Lop SINHVIEN_DIEM(Masv,Mamon, Ngaythi, Diem) Phụ thuộc hàm Masv,Mamon  Diem MUON(Sothe, Masach, Tennguoimuon, Tensach, Ngaymuon, Ngaytra) Với các phụ thuộc hàm: Sothe → Tennguoimuon Masach → Tensach Sothe,Masach, Ngaymuon → Ngaytra 02:44 AM Khoa CNTT 11
  12. 12. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.3 Nhập môn Cơ sở Dữ liệu – Phụ thuộc hàm Thể hiện phụ thuộc hàm trên lược đồ MUON Sothe Masach Tennguoimuo n Tensac h Ngaymuon Ngaytra SINHVIEN_DIEM Masv 02:44 AM Mamon Khoa CNTT Diem 12
  13. 13. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.4 – Quy tắc suy diễn Cho lược đồ R (A), Nhập môn Cơ sở Dữ liệu Phụ thuộc hàm F là tập các phụ thuộc hàm; XY gọi là suy diễn được từ F , nếu với mọi thể hiện r của R thỏa mãn các phụ thuộc hàm F thì XY cũng đúng trong r Kí hiệu F |= XY Ví dụ: MUON(Sothe, Masach, Tennguoimuon, Tensach, Ngaymuon, Ngaytra) F = { Sothe → Tennguoimuon; Masach → Tensach; Sothe,Masach → Ngaymuon , Ngaytra } F |= Sothe,masach →Tensach, Ngaytra 02:44 AM Khoa CNTT 13
  14. 14. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.4 – Quy tắc suy diễn Nhập môn Cơ sở Dữ liệu Phụ thuộc hàm Quy tắc 1 (quy tắc phản xạ) : Nếu X ⊃ Y thì X → Y { X→ Y } |= XZ →YZ Quy tắc 2 (quy tắc tăng) : Quy tắc 3 (quy tắc bắc cầu): { X→ Y, Y→ Z } |= X→ Z Quy tắc 4 (quy tắc chiếu) : { X→YZ } |= {X→ Y, X→ Z} Quy tắc 5 (quy tắc hợp) { X→ Y , X→ Z } |= X→ YZ : Quy tắc 6 (quy tắc tựa bắc cầu): {X→Y,WY→Z }|=WX→ Z Quy tắc suy diễn Amstrong : Tập các quy tắc 1 -3 Khoa CNTT 14
  15. 15. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.4 – Quy tắc suy diễn Nhập môn Cơ sở Dữ liệu Phụ thuộc hàm Chứng minh Quy tắc 1 (quy tắc phản xạ) : Nếu Giả sử : X ⊃ Y thì X → Y t1 và t2 là 2 bộ bất kỳ trên r, với r là thể hiện của R, và X ⊃ Y Ta có: Nếu t1[X]= t2[X], vì X ⊃ Y nên suy ra t1[Y]=t2[Y] theo định nghĩa ta có X → Y 02:44 AM Khoa CNTT 15
  16. 16. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.4 – Quy tắc suy diễn Chứng minh Nhập môn Cơ sở Dữ liệu Phụ thuộc hàm Quy tắc 2 (quy tắc tăng) : { X→ Y } |= XZ →YZ Phản chứng: Giả sử có X→ Y nhưng XZ→ YZ không đúng. tức là : ∃ t, s và nếu t[X] = s[X] t[Y] = s[Y]; t[XZ] = s[XZ] nhưng t[YZ] <> s[YZ] từ t[X] = s[X] và t[XZ] = s[XZ] → t[Z] = s[Z] do t[Y] = s[Y] và t[Z] = s[Z] → t[YZ] = s[YZ] mẫu thuẫn với giả thiết phản chứng Quy tắc 2 đúng. 02:44 AM Khoa CNTT 16
  17. 17. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.4 – Quy tắc suy diễn Chứng minh Nhập môn Cơ sở Dữ liệu Phụ thuộc hàm Quy tắc 3 (bắc cầu): { X→ Y, Y→ Z } |= X→ Z với t, s bất kỳ, nếu t[X] = s[X], cần chứng minh t[Z] = s[Z] Do X→ Y nên nếu t[X] = s[X] ta có t[Y] = s[Y] Do Y→ Z, t[Y] = s[Y] nên t[Z] = s[Z] Vậy nếu t[X] = s[X] ta có t[Z] = s[Z] tức là X→ Z 02:44 AM Khoa CNTT 17
  18. 18. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.4 – Quy tắc suy diễn Phụ thuộc hàm Chứng minh Quy tắc 4 (quy tắc chiếu): Theo giả thiết ta có Nhập môn Cơ sở Dữ liệu { X→YZ } |= {X→ Y, X→ Z} X→ YZ Theo quy tắc 1: ta có YZ→ Y, YZ→ Z Vậy ta có { 02:44 AM X →Y X →Z X→YZ } |= {X→ Y, X→ Z} Khoa CNTT 18
  19. 19. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.4 – Quy tắc suy diễn Chứng minh Nhập môn Cơ sở Dữ liệu Phụ thuộc hàm Quy tắc 5 (quy tắc hợp): { X→ Y , X→ Z } |= X→ YZ Theo QT 2 ta có X→ YX và XY→ YZ Theo QT 3 ta có X→ YZ Chứng minh Quy tắc 6 (tựa bắc cầu): {X→Y, WY→Z }|=WX→ Z Theo QT 2 ta có WX→ WY kết hợp với WY→Z ta có WX→ Z 02:44 AM Khoa CNTT 19
  20. 20. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.4 – Quy tắc suy diễn Nhập môn Cơ sở Dữ liệu Phụ thuộc hàm Quy tắc 4-6 có thể suy dẫn từ tập quy tắc Amstrong Định lý: Quy tắc Amstrong là đúng và đầy đủ. Tức là nếu F bao f, thì f có thể suy diễn được từ F sử dụng hệ các quy tắc suy diễn Amstrong 02:44 AM Khoa CNTT 20
  21. 21. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.5 Nhập môn Cơ sở Dữ liệu – Bao đóng của tập Phụ thuộc hàm Đinh nghĩa: Cho lược đồ R (A), F là tập các phụ thuộc hàm; Tập tất cả các phụ thuộc hàm suy ra được từ của F gọi là bao đóng F, được kí hiệu là F+ Tức là F+ = F ∪ { f , F |= f} Ví dụ : F = {X→ Y , Y→ Z } Thì 02:44 AM F+ = {X→ Y , Y→ Z , X→ Z , X→ YZ} Khoa CNTT 21
  22. 22. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.5 Nhập môn Cơ sở Dữ liệu – Bao đóng của tập Phụ thuộc hàm ví dụ: BANGDIEM(Masv, Dtoan, Dtin, Dtb, Xeploai) F= {Dtoan, DtinDtb; DtbXeploai} Xác định bao đóng ? F += {Dtoan, DtinDtb; DtbXeploai, Dtoan, Dtin Xeploai} 02:44 AM Khoa CNTT 22
  23. 23. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.5 Nhập môn Cơ sở Dữ liệu – Bao đóng của tập Phụ thuộc hàm ví dụ: F= {ABC; AD, D E} Xác định F+ F+= F ∪{A E, AB BD, ABBCD, BCDBCDE, ABCDE } 02:44 AM Khoa CNTT 23
  24. 24. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu 4.6 – Bao đóng của tập thuộc tính Định nghĩa : Cho lược đồ quan hệ R (U), tập phụ thuộc hàm F; X là một tập thuộc tính của R; gọi X+ là bao đóng của X theo F X+F = { A ∈ U sao cho X → A ∈ F +} Ví dụ: DA(Manv, Hoten,Mada, Tenda, DD, Sogio} F ={ Manv ->Hoten; Mada->Tenda, DD; Manv, Mada->Sogio} {Manv}+ = {Mada}+ = {Manv, Hoten} {Mada, Tenda,DD} {Manv, Mada}+ = 02:44 AM {Manv,Hoten, Mada, Tenda,DD,Sogio} Khoa CNTT 24
  25. 25. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.6 Nhập môn Cơ sở Dữ liệu – Bao đóng của tập thuộc tính Bổ đề: X Y được suy diễn từ tập phụ thuộc hàm F theo quy tắc Amstrong khi và chỉ khi Y ⊆ X+F Ví dụ: Cho F={ AB  C, A  D, D  E, AC B} Xác định các bao đóng sau: A+ = {A, D,E } AB+ = {A, B, C, D, E } B = D+ = {B} {D, E} AD+ = {A, D, E} + 02:44 AM Khoa CNTT     F |= AB E ? F |= DC ? F |= AD CDE ? F |=AB CDE 25
  26. 26. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.6 Nhập môn Cơ sở Dữ liệu – Bao đóng của tập thuộc tính Ví dụ 2: Cho F ={ A  B, C  DE, AC F} Xác định các bao đóng sau: A+ = {A, B } C = {C, D, E } = {A, B,C, D, E, F} + AC+ 02:44 AM Khoa CNTT  F |= A E ?  F |= ACBDF ? 26
  27. 27. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.6 Nhập môn Cơ sở Dữ liệu – Bao đóng của tập thuộc tính Thuật toán tìm bao đóng X + X+ = X; Repeat F Old X+ = X+ ; Với mỗi phụ thuộc hàm Y → Z trong F thực hiện nếu X+ ⊃ Y thì X+ = X+ ∪ Z; until ( X+ = Old X+ ); 02:44 AM Khoa CNTT 27
  28. 28. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.6 Nhập môn Cơ sở Dữ liệu – Bao đóng của tập thuộc tính Ví dụ 1: Tìm bao đóng của AB với các phụ thuộc hàm sau 02:44 AM Khởi tạo: X+ ={AB} Dùng (a): X+ ={ABC} Dùng (b): X+ ={ABCD} Dùng (c): X+ ={ABCDE} Dùng (d): X+ ={ABCDE} Khoa CNTT 28
  29. 29. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.6 Nhập môn Cơ sở Dữ liệu – Bao đóng của tập thuộc tính Ví dụ 2: Cho G} F ={ A  D, E H , AB  DE, CE Tìm {ABC}+ Đặt X = {ABC} (Lặp: ) Old X = X+ với A  D ta có X+ = {ABCD} với E  H ta có X+ = {ABCD} với AB  DE ta có X+ = {ABCDE} với CE  G ta có X+ = {ABCDEG} ……. với E  H ta có X+ = {ABCDEGH} .. Vậy {ABC}+ = {ABCDEGH} 02:44 AM Khoa CNTT 29
  30. 30. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.6 Nhập môn Cơ sở Dữ liệu – Bao đóng của tập thuộc tính Ví dụ 3: Cho F ={ AG  I, BE I,E G, AB  E, GI H} Hãy chứng tỏ AB GH Đặt X = {AB} (Lặp: ) Old X = X+ với AB  E ta có X+ = {ABE} với BE  I ta có X+ = {ABEI} với E  G ta có X+ = {ABEGI} với GI  H ta có X+ = {ABEGHI} với AG  I ta có X+ = {ABEGHI} Vậy GH ⊆{AB}+ do đó AB GH 02:44 AM Khoa CNTT 30
  31. 31. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.6 Nhập môn Cơ sở Dữ liệu – Bao đóng của tập thuộc tính Ví dụ 4: Cho F ={ A  D, B C,BC EF, D G} Chứng minh F | =AB EFG Đặt X = {AB} với A  D ta có X+ = {ABD} với B  C ta có X+ = {ABCD} với BC  EF ta có X+ = {ABCEF} với D G ta có X+ = {ABCDEFG} do đ ó 02:44 AM F | =AB EFG Khoa CNTT 31
  32. 32. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu Bài tâp Bài tâp 1: Hãy chứng minh các suy diễn sau bằng các sử dụng các quy tắc suy diễn 1. {W  Y, X Z } |= WXY ta có | {X Z } = {WXWZ} | {WXWZ } = {WX W} {WXW , W Vậy 02:44 AM {W |  Y} = {WX Y} quy tắc 2 quy tắc 4 quy tắc 3  Y, X Z } |= {WX Y} Khoa CNTT 32
  33. 33. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu Bài tâp Bài tâp 1: Hãy chứng minh các suy diễn sau 2. {X Z } và Y ⊆ Z |= XY ta có Y ⊆ Z nên {Z  Y } | {XZ , Z  Y} = {X Y } Vậy 02:44 AM quy tắc 1 quy tắc 3 {X Z } và Y ⊆ Z |= XY Khoa CNTT 33
  34. 34. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu Bài tâp Bài tâp 1: Hãy chứng minh các suy diễn sau 3. {XY,XW,WYZ} |= {XZ} ta có {XY,XW} |= {XWY} | {XWY , WYZ} = {X Z } Vậy 02:44 AM quy tắc hơp quy tắc bắc cầu {XY,XW,WYZ} |= {XZ} Khoa CNTT 34
  35. 35. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu Bài tâp Bài tâp 1: Hãy chứng minh các suy diễn sau 4. {X Y,Z W } |= XZYW ta có {X  Y } |= XZYZ | {Z  W} = {YZ YW } Vậy 02:44 AM quy tắc tăng quy tắc 3 {X Y,Z W } |= XZYW Khoa CNTT 35
  36. 36. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu Bài tâp Bài tâp 1: Hãy chứng minh các suy diễn sau 5. {X Y,YZ} |= XYZ ta có {X Y,YZ} |= XZ | {X Y,XZ} = XYZ Vậy 02:44 AM quy tắc bắc cầu quy tắc hợp {X Y,YZ} |= XYZ Khoa CNTT 36
  37. 37. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu Bài tâp Bài tâp 2: Cho R với tập phụ thuộc hàm F ={ AB C, B D,CD E,CE GH, G A} Chứng minh các phụ thuộc hàm sau bằng cách dùng bao đóng: AB  E AB GH 02:44 AM Khoa CNTT 37
  38. 38. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.7 Nhập môn Cơ sở Dữ liệu – Phụ thuộc hàm tương đương Định nghĩa: • Một tập phụ thuộc hàm E được phủ bởi tập phụ thuộc hàm F nếu mỗi một phụ thuộc hàm trong E đều thuộc F+ hay mỗi phụ thuộc hàm trong E có thể suy diễn được từ F. • Hai tập phụ thuộc hàm E và F là tương đương nếu E+ = F+ Tương đương có nghĩa là mỗi phụ thuộc hàm trong E có thể suy diễn được từ 02:44 AM F và mỗi phụ thuộc hàm trong F có thể suy diễn được từ E. Khoa CNTT 38
  39. 39. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.7 Nhập môn Cơ sở Dữ liệu – Phụ thuộc hàm tương đương Cho hai tập phụ thuộc hàm F = {A →C, AC → D, E→AD, E →H } E = { A →CD, E → AH } Kiểm tra xem E tương đương F ? Cách 1: Dùng các quy tắ c suy diễ n để chứng minh các phụ thuộc hàm của E suy dẫn được từ F và ngược lại Cách 2: Dùng bổ đề về bao đóng và suy diễ n để chứng minh 02:44 AM Khoa CNTT 39
  40. 40. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.7 Nhập môn Cơ sở Dữ liệu – Phụ thuộc hàm tương đương F = {A →C, AC → D, E→AD, E →H } E = { A →CD, E → AH } Kiểm tra xem E tương đương F ? Cách 1: Dùng các quy tắ c suy diễ n {A →C} |= { A → AC} {AC → D} |= {A →D} |= {A →CD} kết hợp với {A →C} Vậy F |= {A →CD} {E →AD} |= {E → A} {E → H} |= {E →AH} Vậy F |= {E →AH} Tức là 02:44 AM Khoa CNTT F phủ E 40
  41. 41. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.7 Nhập môn Cơ sở Dữ liệu – Phụ thuộc hàm tương đương F = {A →C, AC → D, E→AD, E →H } E = { A →CD, E → AH } Kiểm tra xem E tương đương F ? Cách 1: Dùng các quy tắ c suy diễ n Tương tự: chứng minh được Tức là 02:44 AM F tương đương E phủ F E Khoa CNTT 41
  42. 42. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu – Phụ thuộc hàm tương đương F = {A →C, AC → D, E→AD, E →H } E = { A →CD, E → AH } Kiểm tra xem E tương đương F ? 4.7 Cách 2: Dùng bổ đề về bao đóng và suy diễ n để chứng minh {A}+F = {ACD} {A}+E = {ACD} {AC}+E = {ACD} + {E} F = {ADEH} vậy F phủ 02:44 AM {E}+E = {ACDEH} E vậy E phủ tức là E,F tương đương Khoa CNTT F 42
  43. 43. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.8 Nhập môn Cơ sở Dữ liệu – Tập phụ thuộc hàm tối thiểu Đị nh nghĩa: Tập phụ thuộc hàm F gọi là tố i thiể u nếu F thỏa mãn các điều kiện sau    Vế phải của mọi phụ thuộc hàm trong F chỉ có 1 thuộc tính Không thể thay thế XA trong F bằng YA với Y ⊆ X mà vẫn còn là tập phụ thuộc hàm tương đương với F. Không thể bớt được bất kỳ phụ thuộc hàm nào khỏi F mà vẫn là tập phụ thuộc hàm tương đương F Ví dụ: F = {A →C, AC → D, E→AD, E →H } Tối thiểu? E = { A →C, A → D, E → H } G = { E →C, A → D, AD → H } 02:44 AM Khoa CNTT 43
  44. 44. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.8 Nhập môn Cơ sở Dữ liệu – Tập phụ thuộc hàm tối thiểu Phủ tố i thiể u Tập phụ thuộc hàm Fmin gọi là phủ tố i thiể u của F nếu Fmin là tập phụ thuộc hàm tối thiểu, tương đương F. Ví dụ: F = {A →C, AC → D, E→AD, E →H } Fmin = {A →C, A → D, E→A, F= { E →C, A → D, AD → H } Fmin= { E →C, A → D, 02:44 AM Khoa CNTT E →H } A→H} 44
  45. 45. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.8 Nhập môn Cơ sở Dữ liệu – Tập phụ thuộc hàm tối thiểu Thuật toán tìm phủ tối thiểu của F 1. Đặt G = F 2. Thay mỗi pth X → A1A2..Ak trong G bằng các pth X → A1, X → A2.. X → Ak 3. Với mỗi pth XY → B trong G, nếu G-{XY → B} ∪ {X → B} tương đương với G thì thay {XY → B} bởi {X → B} 4. Với mỗi pth X → Y trong G, nếu G-{X → Y} tương đương với G thì loại {X → Y} G là phủ tối thiểu của F 02:44 AM Khoa CNTT 45
  46. 46. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu Ví dụ: Tìm phủ tối thiểu F = {A →BC, B → AC, C→AB, AC →D } 1. G = {A →BC, B → AC, C→AB , AC →D} ! Một tập phủ thuộc hàm có thể có nhiều phủ tối thiểu 2. G= {A →B, A→C, B → A,B → C, C→A, C→B , AC →D} 3. G= {A →B, A→C, B → A,B → C, C→A, C→B , A →D} 4. Loại {A→C}, {C→A} G= {A →B, B → A, B → C, C→B , A →D} vậy F min= {A →B, B → A, B → C, C→B , A →D} 02:44 AM Khoa CNTT 46
  47. 47. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu 4.9 – Bao đóng và khóa  Siêu khóa, khóa, khóa chính và khóa dự tuyển  Thuộc tính khóa Thuậ t toán tìm khóa K củ a R(U) dự a trên tậ p phụ thuộ c hàm F Đặt K = U • Lặp với mỗi thuộc tính A trong K • o tính {K-A}+ o nếu {K-A}+ 02:44 AM F F = U thì K = K-{A}; Khoa CNTT 47
  48. 48. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.10 – Nhập môn Cơ sở Dữ liệu Các dạng chuẩn dựa trên khóa chính  Chuẩ n là gì? Mỗi một dạng chuẩn là một tập các điều kiện trên lược đồ nhằm đảm bảo các tính chất của nó (liên quan tới dư thừa và bất thường trong cập nhật)  Chuẩn hóa : quá trình phân tích lược đồ quan hệ dựa trên các FD và các khóa chính để đạt được: Giảm tối đa sự dư thừa o Giảm tối đa các phép cập nhật bất thường o Chuẩn và hóa do Codd đề xuất đầu tiên năm 1972 (1NF-3NF, sau đó Boyce-Codd, 4-5NF) 02:44 AM Khoa CNTT 48
  49. 49. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.10 – Nhập môn Cơ sở Dữ liệu Các dạng chuẩn dựa trên khóa chính Thủ tục chuẩn hoá cung cấp • • Một cơ cấu hình thức để phân tích các lược đồ quan hệ dựa trên khoá và các phụ thuộc hàm. Một loạt các kiểm tra dạng chuẩn có thể thực hiện trên các lược đồ quan hệ riêng rẽ sao cho cơ sở dữ liệu quan hệ có thể được chuẩn hoá đến một mức cần thiết. Chuẩn hóa cần đảm bảo tính chất: • • Nối không mất mát (hoặc nối không phụ thêm- không têm bộ giả) Bảo toàn sự phụ thuộc 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. 02:44 AM Khoa CNTT 49
  50. 50. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ a. Dạng chuẩn 1 Nhập môn Cơ sở Dữ liệu (1NF) Một quan hệ gọi là 1NF nếu • Miền giá trị của mỗi thuộc tính chỉ chứa giá trị nguyên tử (đơn, ko phân chia được) • Giá trị của mỗi thuộc tính trong các bộ là một giá trị đơn Ví dụ: SV_DIEM(Masv, Mamon, Diem) SV(Masv, Hoten, Gioitinh,Ngaysinh, Noisinh) 02:44 AM Khoa CNTT 50
  51. 51. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu a. Dạng chuẩn 1 Ví dụ: NV_DA Mada Manv Sogio CO1 Cấp nước 001 002 20 35 DO2 02:44 AM TenDa Cung cấp thiết bị điện.. 002 004 20 40 Khoa CNTT 51
  52. 52. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ Nhập môn Cơ sở Dữ liệu a. Dạng chuẩn 1 02:44 AM Khoa CNTT 52
  53. 53. Phụ thuộc hàm và chuẩn hóa CSDL quan hệ 4.10 – Nhập môn Cơ sở Dữ liệu Các dạng chuẩn dựa trên khóa chính 02:44 AM Khoa CNTT 53

×