Bài giảng slide cơ sở dữ liệu_BKA_C5:Mô hình dữ liệu quan hệ và thiết kế cơ sở dữ liệu luận lý.
Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT Nội dung Định nghĩa thuật ngữ Các đặc tính quan hệ Các khóa quan hệ Các ràng buộc tồn vẹn Biến đổi sơ đồ liên kết thực thể (ERD) thành quan hệ Phụ thuộc hàm Chuẩn hóa liệu dạng chuẩn Phân rã quan hệ Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT Các khái niệm định nghĩa Cơ sơ liệu quan hệ relational database Cơ sở liệu quan hệ CSDL mà dũ liệu lưu trữ bảng Miền domain Miền tập giá trị Thông thường, miền tập kiểu liệu ký hiệu bắt đầu chữ D (ví dụ D1, D2, …) Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT Các khái niệm định nghĩa Tích Descartes cartesian product Tích Descartes miền D1, D2, …, Dn, ký hiệu D1 × D2 × … × Dn, tập phần tử (v1, v2, …, vn) cho vi ∈ Di (i = 1,…,n) D1 × D2 × … × Dn = {(v1, v2,…, vn) | vi ∈ Di, i = 1,…,n} Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT Thuộc tính Thuộc tính attribute Thuộc tính đặc tính riêng đối tượng liệu Một đối tượng liệu có nhiều thuộc tính Ký hiệu: bắt đầu chữ A (ví dụ A1, A2, ) Tên thuộc tính (attribute name) phân biệt Miền trị thuộc tính Giá trị rỗng (null value) Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT Thuộc tính Nhà cung cấp có thuộc tính: - Mã nhà cung cấp có tên Snum - Tên nhà cung cấp có tên Name - Thành phố có tên City Miền trị thuộc tính city ký hiệu dom(City) Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT Quan hệ Lược đồ quan hệ relation schema Lược đồ quan hệ R tập hữu hạn thuộc tính {A1, A2, , An} ký hiệu R (A1, A2, , An) với R tên lược đồ quan hệ Trong lược đồ quan hệ R, tên thuộc tính A1, A2, , An Vị từ lược đồ quan hệ predicate Vị từ lược đồ quan hệ R, ký hiệu || R ||, phát biểu cho biết ngữ nghĩa lược đồ quan hệ R Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT Quan hệ Bậc lược đồ quan hệ degree, arity Bậc lược đồ quan hệ số lượng thuộc tính lược đồ quan hệ Lược đồ quan hệ: Supplier (Snum, Name, City) Vị từ: “Mỗi nhà cung cấp có mã nhà cung cấp Snum phân biệt, tên nhà cung cấp Name, thuộc thành phố City” Bậc: Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT Quan hệ Quan hệ relation Gọi D1, D2, , Dn miền tương ứng với thuộc tính A1, A2, , An D = D1 ∪ D2 ∪ … ∪ Dn Quan hệ r lược đồ quan hệ R, ký hiệu r(R), tập hữu hạn ánh xạ {t1, t2, , tp} từ R vào D, với điều kiện ánh xạ t ∈ r t(Ai) ∈ Di, ≤ i ≤ n Quan hệ r thể quan hệ (relation instance) lược đồ quan hệ R thời điểm Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT Quan hệ Quan hệ Mỗi ánh xạ gọi (tuple) quan hệ Một quan hệ bậc n gọi bộ−n (n−tuple) Một quan hệ bao gồm nhiều giá trị, giá trị gọi thành phần (component) Ký hiệu u[A] u.A Ký hiệu u[X] Bậc quan hệ lược đồ quan hệ bậc lược đồ quan hệ Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 10 Dạng chuẩn R Mãsv Họtên Mãlớp Tênlớp Mônhọc Điểm S1 Tiến L1 MT01 M1 S1 Tiến L1 MT01 M2 S1 Tiến L1 MT01 M3 S2 Trúc L1 MT01 M1 S2 Trúc L1 MT01 M2 S3 Hiền L2 MT02 M1 Lược đồ quan hệ R 1NF thuộc tính R khơng thuộc tính đa trị, khơng thuộc tính phức hợp Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 58 Dạng chuẩn Định nghĩa Lược đồ quan hệ R dạng chuẩn (2NF Second Normal Form) tập phụ thuộc hàm F R dạng chuẩn thuộc tính khơng khóa phụ thuộc hàm đầy đủ vào khóa R Các bất thường quan hệ 2NF Thêm vào Cập nhật Xóa bỏ Nguyên nhân Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 59 Dạng chuẩn R Mãsv Họtên Mãlớp Tênlớp Mônhọc Điểm S1 Tiến L1 MT01 M1 S1 Tiến L1 MT01 M2 S1 Tiến L1 MT01 M3 S2 Trúc L1 MT01 M1 S2 Trúc L1 MT01 M2 S3 Hiền L2 MT02 M1 Các phụ thuộc hàm: Mãsv → {Họtên, Mãlớp} Mãlớp → Tênlớp {Mãsv, Mônhọc} → Điểm Khóa R: {Mãsv, Mơnhọc} Lược đồ quan hệ R khơng 2NF thuộc tính khơng khóa Họtên phụ thuộc hàm riêng phần vào khóa {Mãsv, Mơnhọc} Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 60 Dạng chuẩn R2 R1 Mãsv Họtên Mãlớp Tênlớp Mãsv Mônhọc Điểm S1 Tiến L1 MT01 S1 M1 S2 Trúc L1 MT01 S1 M2 S3 Hiền L2 MT02 S1 M3 S2 M1 S2 M2 S3 M1 Khóa R1: Mãsv Khóa R2: {Mãsv, Mônhọc} R (Mãsv, Mônhọc, Họtên, Mãlớp, Tênlớp, Điểm) R1 (Mãsv, Họtên, Mãlớp, Tênlớp) R2 (Mãsv, Mônhọc, Điểm) Lược đồ quan hệ R1 R2 2NF thuộc tính khơng khóa phụ thuộc hàm đầy đủ vào khóa Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 61 Dạng chuẩn Định nghĩa Lược đồ quan hệ R dạng chuẩn (3NFThird Normal Form) tập phụ thuộc hàm F R dạng chuẩn thuộc tính khơng khóa khơng phụ thuộc bắc cầu vào khóa R Định nghĩa Lược đồ quan hệ R dạng chuẩn tập phụ thuộc hàm F R dạng chuẩn phụ thuộc hàm X → A với A ∉ X X siêu khóa R A thuộc tính khóa Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 62 Dạng chuẩn R1 Mãsv Họtên Mãlớp Tênlớp S1 Tiến L1 MT01 S2 Trúc L1 MT01 S3 Hiền L2 MT02 Lược đồ quan hệ R1 khơng 3NF thuộc tính khơng khóa Tênlớp phụ thuộc bắc cầu vào khóa Mãsv Mãsv → Mãlớp Mãlớp → Tênlớp Mãlớp −/→ Mãsv Tênlớp ∉ {Mãsv, Mãlớp} Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 63 Dạng chuẩn R11 R12 Mãlớp Tênlớp Mãsv Họtên Mãlớp L1 MT01 S1 Tiến L1 L2 MT02 S2 Trúc L1 S3 Hiền L2 Khóa R11: Mãlớp Khóa R12: Mãsv R1 (Mãsv, Họtên, Mãlớp, Tênlớp) R11 (Mãlớp, Tênlớp) R12 (Mãsv, Họtên, Mãlớp) Lược đồ quan hệ R11 R12 3NF thuộc tính khơng khóa khơng phụ thuộc bắc cầu vào khóa Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 64 Dạng chuẩn R Sinhviên Mônhọc Giảngviên Tiến CSDL G1 Tiến CNPM G2 Trúc CSDL G1 Các phụ thuộc hàm: Khóa R: {Sinhviên, Mơnhọc} Giảngviên → Mơnhọc {Sinhviên, Giảngviên} {Sinhviên, Mônhọc} → Giảngviên Lược đồ quan hệ R 3NF khơng BCNF định thuộc Giảngviên khơng siêu khóa R Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 65 Dạng chuẩn Các bất thường quan hệ 3NF Thêm vào Cập nhật Xóa bỏ Nguyên nhân Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 66 Dạng chuẩn Boyce-Codd Định nghĩa Lược đồ quan hệ R dạng chuẩn Boyce−Codd (BCNF - Boyce Codd Normal Form) tập phụ thuộc hàm F R dạng chuẩn phụ thuộc hàm X → A với A ∉ X X siêu khóa R Nếu lược đồ quan hệ R dạng chuẩn Boyce-Codd R dạng chuẩn Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 67 Dạng chuẩn Boyce-Codd R1 R2 Giảngviên Mônhọc Sinhviên Giảngviên G1 CSDL Tiến G1 G2 CNPM Tiến G2 Trúc G1 Khóa R1: Giảngviên Khóa R2: {Sinhviên, Giảngviên} R (Sinhviên, Mônhọc, Giảngviên) R1 (Giảngviên, Mônhọc) R2 (Sinhviên, Giảngviên) Lược đồ quan hệ R1 R2 BCNF định thuộc siêu khóa Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 68 Phân rã Phân rã decomposition Phân rã ρ R(U) tập {R1(U1), R2(U2), …, Rk(Uk)} cho: (1) U = U1 ∪ U2 ∪ … ∪ Uk (2) ∀r(R), ri(Ri): ri = ∏Ui(r) với i = 1,2,…,k Phân rã bảo tồn thơng tin lossless decomposition Phân rã ρ R phân rã bảo tồn thơng tin nếu: ∀r(R): r = r1 >< r2 >< … >< rk Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 69 Phân rã Phân rã bảo toàn phụ thuộc hàm dependency-preserving decomposition Phân rã ρ R phân rã bảo toàn phụ thuộc hàm nếu: F + = (F1 ∪ F2 ∪ … ∪ Fk)+ với F tập phụ thuộc hàm R Fi tập phụ thuộc hàm Ri (i = 1,…,k) Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 70 Phương pháp Phân rã Phương pháp Phân rã (decomposition) cho kết phân rã bảo tồn thơng tin dạng chuẩn Boyce-Codd Giải thuật Phân rã Nhập: Tập thuộc tính U lược đồ quan hệ R tập phụ thuộc hàm F (là phủ tối thiểu) Xuất: Phân rã ρ R bảo tồn thơng tin dạng chuẩn Boyce-Codd Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 71 Phương pháp Phân rã procedure Decomposition (U); begin Tìm f: X → Y ∈ F+ cho XY ⊂ U X+F ∩ U ⊂ U; if not (∃ f) then ρ := ρ ∪ {R(U)} else begin U1 = X+F ; U2 = U - (U1 - X); Decomposition (U1); Decomposition (U2) end end; Lệnh gọi: ρ := ∅; Decomposition (U); Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 72 ... hiệu u[X] Bậc quan hệ lược đồ quan hệ bậc lược đồ quan hệ Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT 10 Quan hệ Các đặc tính quan hệ Tên quan hệ phân biệt... điểm Chương Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT Quan hệ Quan hệ Mỗi ánh xạ gọi (tuple) quan hệ Một quan hệ bậc n gọi bộ−n (n−tuple) Một quan hệ bao gồm nhiều... Mơ hình liệu quan hệ thiết kế CSDL luận lý 2006 Nguyễn Trung Trực - Khoa CNTT Quan hệ Bậc lược đồ quan hệ degree, arity Bậc lược đồ quan hệ số lượng thuộc tính lược đồ quan hệ Lược đồ quan hệ: