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

Bài giảng Cơ sở dữ liệu GV. Cao Tùng Anh

89 544 0

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

Nội dung

Bài giảng có kết cấu nội dung gồm 7 chương trình bày các kiến thức về: tổng quan cơ sở dữ liệu, mô hình dữ liệu quan hệ, ngôn ngữ xử lý vấn tin, ràng buộc toàn vẽn, thiết kế cơ sở dữ liệu, các dạng chuẩn cơ bản, tối ưu hóa câu hỏi. Để nắm nội dung chi tiết, mời các bạn cùng tham khảo.

Cơ Sở Dữ Liệu GV: Cao Tùng Anh Khoa:CNTT MÔ TẢ HỌC PHẦN • Môn Cơ sở liệu (CSDL) nhằm trình bày khái niệm thuật toán như: Tính bao đóng tập thuộc tính, tìm khóa lược đồ quan hệ, xác định dạng chuẩn lược đồ quan hệ… Để từ sinh viên thiết kế CSDL áp dụng thực tế • Ngoài ra, tài liệu cung cấp ngôn ngữ như: Đại số quan hệ, SQL (Structured Query Language) để sinh viên tạo CSDL truy vấn tốt số hệ quản trị CSDL NỘI DUNG HỌC PHẦN - Bài 1:Tổng quan sở liệu Bài 2:Mô hình liệu quan hệ Bài 3:Ngôn ngữ xử lý vấn tin Bài 4:Ràng buộc toàn vẹn Bài 5:Thiết kế sở liệu Bài 6:Các dạng chuẩn Bài 7:Tối ưu hóa câu hỏi Bài 1: Tổng quan CSDL 1.1 Định nghĩa : Một hệ CSDL (Database System) tập hợp liệu tổ chức cách có chọn lọc, ghi thiết bị trữ tin, nhằm phục vụ đồng thời cho nhiều người với nhiều mục đích khác 1.2 Các mức biểu diễn CSDL Bài 1(tt) 1.3 Đặc tính môi trường CSDL •Dữ liệu chia sẻ cho nhiều người sử dụng khác nhau, để tiết kiệm không gian lưu trữ, tăng hiệu khai thác •Làm giảm tình trạng liệu bị lưu trữ trùng lắp, bảo đảm tính quán việc truy xuất liệu tính toàn vẹn liệu •Có tính độc lập liệu chương trình ứng dụng Bài 1(tt) 1.4 Các mô hình liệu 1.4.1 Mô hình thực thể kết hợp (ERD) •Thực thể (Entity): đối tượng cụ thể hay trừu tượng giới thực Ví dụ: Nhân viên Nguyễn Văn A; Xe có biển số 60E-1689 •Thuộc tính (Attribute): Là yếu tố thông tin để nhận biết thực thể Ví dụ: Họ tên, ngày sinh, nơi sinh nhân viên •Loại thực thể (Entity Type): Tập thực thể có chung thuộc tính Ví dụ: Loại thực thể NhânViên, SinhViên,MặtHàng, •Khóa loại thực thể: Là tập thuộc tính mà giá trị xác định thực thể Bài 1(tt) Loại thực thể thuộc tính Mối kết hợp Loại thực thể mối kết hợp Bài 1(tt) • Bảng số mối kết hợp: Bản số nhánh mối kết hợp: gồm thành phần (min, max), ràng buộc toàn vẹn số lượng tối thiểu tối đa thực thể nhánh tham gia vào thể mối kết hợp • Chú ý: Cận tối thiểu hay Nếu toán không qui định Min mặc định =1 Nếu toán không qui định Max đặt max = n với (n >1) Thường xuất số:(0,1); (0, n); (1,1); (1,n) Bài 1(tt) • Các bước thiết lập mô hình thực thể kết hợp: B1: Phân tích yêu cầu toán, chọn thông tin cần quản lý, từ hình thành từ điển liệu B2: Tiến hành gom nhóm thuộc tính theo thực thể thật B3: Xác định mối kết hợp thực thể B4: Xác định thuộc tính mối kết hợp B5: Xác định số mối kết hợp Ví dụ: Xây dựng mô hình liệu phục vụ cho việc quản lý điểm thi môn học để tính điểm trung bình học kỳ sinh viên lớp, với quy tắc quản lý sau: Mỗi môn học, sinh viên phép thi lần Bài 1(tt) 1.4.2 Mô hình liệu mạng •Loại mẫu tin (Record Type): thay cho khái niệm loại thực thể, chứa mẫu tin mà mẫu tin thực thể •Loại liên hệ (Set Type): quan hệ ngữ nghiã loại mẫu tin chủ loại mẫu tin thành viên Kiểu 1:1 : Ý nghĩa mẫu tin chủ liên hệ với mẫu thành viên, Kiểu 1:n : Một mẫu tin chủ liên hệ với nhiều mẫu tin thành viên Bài (tt) 6.2 Dạng chuẩn 2: •Phụ thuộc đầy đủ: Giả sử có lược đồ quan hệ Q tập phụ thuộc hàm F Thuộc tính A gọi phụ thuộc đầy đủ vào tập thuộc tính X nếu: – A ∈ X+F – X → A phụ thuộc hàm nguyên tố (không tồn X’ ⊆ X, mà X → A) •Định nghĩa : Một lược đồ quan hệ Q gọi dạng chuẩn nếu: Q dạng chuẩn thuộc tính không khóa Q phụ thuộc đầy đủ vào khóa Q Bài (tt) Ví dụ: Xét quan hệ quản lý học tập sau: QLHT(MsSV, Ten, NS, Phai, ĐC, MsLop, tenLop, MsMh, TenMh, Diem) F= { MsSV → Ten, NS, Phai, ĐC, MsLop ; MsLop → tenLop; MsMh →TenMh; MsMh, MsSV → Diem } •Quan hệ QLHT không đạt dạng chuẩn MsSV → Ten với ten thuộc tính không khóa, không phụ thuộc đầy đủ vào khóa {MsMh, MsSV} Bài (tt) 6.3 Dạng chuẩn 3: Phụ thuộc bắc cầu: •Thuộc tính A ∈ Q+ gọi phụ thuộc bắc cầu vào tập thuộc tính X ∃Y ∈ Q+: – X → Y ∈ F+ Y → A ∈ F+ – Y → X ∉ F+ – A ∉ (X ∪ Y) •Khi X → A gọi phụ thuộc hàm bắc cầu Bài (tt) Định nghĩa: Một lược đồ quan hệ Q gọi dạng chuẩn nếu: – Q dạng chuẩn 1, – Mọi thuộc tính không khóa Q không phụ thuộc bắc cầu vào khóa Q Ví dụ: Quan hệ GIẢNG_DẠY(MãLớp, MãsốGV, TênGV, Địachỉ) Với tập F = {Mãlớp → MãsốGV; MãSốGV → TênGV, Địachỉ} Không đạt dạng chuẩn Dạng chuẩn trùng lắp thông tin có phụ thuộc bắc cầu Bài (tt) 6.4 Dạng chuẩn BC(Boyce-Cold): •Định nghĩa: Một lược đồ quan hệ Q gọi dạng chuẩn Boyce-Codd (BC) nếu: –Q dạng chuẩn 1, –Mọi phụ thuộc hàm không hiển nhiên F có vế trái siêu khóa Ví dụ: ĐẶT_HÀNG (SốĐH, NgàyĐH, MãKH) Với F = {SốĐH → NgàyĐH, MãKH} => lđ quan hệ đạt dạng chuẩn Boyce-Codd Bài (tt) 6.5 Dạng chuẩn LĐCSDL: •Là dạng chuẩn thấp lược đồ quan hệ LĐCSDL Ví dụ: Cho lược đồ CSDL gồm hai lược đồ quan hệ sau : Q1(ABC), F1={A → BC, C → B} Q2(BC), F2={C → B} Cho biết LĐCSDL dạng chuẩn cao ? 2NF có phụ thuộc bắc cầu vào khóa BCNF •Vậy LĐCSDL 2NF Bài (tt) 6.6 Chuẩn hóa LĐQH phương pháp phân rã: Định lý Delobel: •Cho lược đồ quan hệ u=(Q,F) Nếu f:X → A ∈ F+ cho X ∪ A ⊂ Q+ (là thực Q+) phép phân rã Q thành lược đồ quan hệ con: , bảo toàn thông tin Thuật toán phân eã dựa vào định lý Delobel, ta phân rã quan hệ Q thành quan hệ Q1 Q2 pth f thỏa điều kiện định lý Lặp lại phân rã Q1 Q2 Qi thu đạt BCNF Bài (tt) • Procedure PhanRa(Q, F) • Dữ liệu vào: • Dữ liệu ra: = { Qi }ni=1 {tập lược đồ quan hệ phân rã} • Begin b1 Loại bỏ PTH có VT ∪ VP = Q+ khỏi F F* = F \ { f ∈ F : VT(f) ∪ VP(f) = Q+ } b2 Nếu F* = ∅ C = C ∪ {Q} {Điểm dừng} ngược lại, thực phân rã b21 Chọn f:X → Y ∈ F b22 Phân rã thành lược đồ con: b23 PhanRa(Q1, F1); Bài (tt) • Xét LƯỢC ĐỒ QUAN HỆ Q(MsKH, TP, CTyVC, MsHH, SL) MsKH: Mã số Khách hàng TP: Thành phố nhà cung cấp CtyVC: công ty vận chuyển hàng MsHH: mã hàng hóa SL: số lượng F = {f1: MsKH → TP; f2: MsKH → CTyVC; f3: MsKH, MsHH → SL; f4:TP → CtyVC} • Khóa là: {MsKH, MsHH} • Đạt dạng chuẩn không đạt dạng chuẩn vì: CtyVC không phụ thuộc đầy đủ vào khóa • Sử dụng PP phân rã để nâng cấp lược đồ quan hệ Q: Bài Tối ưu hóa • Trong phần trước tìm hiểu cách thức tổ chức tốt cho sở liệu Phần nghiên cứu làm để truy vấn liệu nhanh • Để ví dụ cho phương pháp tối ưu này, xét phần CSDL quản lý bán hàng gồm quan hệ sau : HH(MsHH, TenHH, DVT, SoTon, ĐG) KH(MsKH, TenKH, DC, DT, Fax) DDH(SoDDH, NgayLap, MsKH) CTDDH(SoDDH, MsHH, SL, Dg, GiamGia) Bài (tt) • 7.1 Tương đương hai biểu thức : Hai biểu thức B1 B2 tương đương tình trạng CSDL, chúng cung cấp kết giống Ví dụ: Cho quan hệ Q1=DDH(MaHD, MaKH) Q2=CTDH(MaHD, MH) Câu hỏi: Cho danh sách MH mà khách hành MaKH = A mua Dùng NNĐSQH để trả lời cho câu hỏi ta xét cách sau: Q11= (Q1 Q2) • Cách 1: Q12 = Q11:MaKH = "A" Q13 = Q12[MH] • Cách 2: Q21 = Q1 : MaKH = "A" Q22 = Q21 Q2 Bài (tt) • Tuy cách cho kết thời gian thực cách không Thật vậy, Giả sử: Q1 Q2 chứa n1=n2 =10.000 Để giảm số lần đọc mẫu tin, Hệ quản trị thường đọc trang vào nhớ Giả sử, trang chứa p1= p2 = Số trang tối đa lưu trữ lúc nhớ m = 101 • Với cách 1: Tổng số lần truy cập: 2000 + 40.000 = 42.000 lần Nếu tốc độ truy cập trang giây phép kết phải 35 ph ½ • Với cách :Tổng cộng 4000 trang phải ph 22 giây • Chúng ta nhận thấy: từ biểu thức cho trước cần xác định xem biểu thức tối ưu chưa, chưa tối ưu, ta cần biết cách biến đổi để có biểu thức tương đương tối ưu Bài (tt) 7.2 Các nguyên tắc tối ưu: 1- Thực sớm tốt phép chọn chiếu để giới hạn khối lượng liệu cần phải xử lý 2- Trước thực phép kết hay tích Descartes chọn cách thích hợp tùy theo phương thức truy cập sẵn có Hệ QTCSDL như: Sắp xếp lại quan hệ hay xây dựng mục theo thành phần tham gia điều kiện kết 3- Trước thực phép chọn xem có sẳn mục thuộc tính liên quan đến điều kiện chọn hay không để tránh việc quét toàn quan hệ 4- Gom phép chọn phép chiếu quan hệ để thực lúc Bài (tt) 5- Kết hợp phép chiếu với phép toán trước sau phép chiếu để giảm khối lượng lưu trữ quan hệ kết trung gian 6- Biến đổi phép tích Descartes thành phép kết Ví dụ: tối ưu hóa biểu thức sau : (((AB) x (CD)): B = C ∧ D = 99)[A] Biến đổi: (((AB) x ((CD):D = 99): B = C)[A] (Theo nguyên tắc 1) ((AB) ((CD):D = 99))[A] (Theo nguyên tắc 6) Bài tập • Bài tập: Dựa vào CSDL cho (ở đầu 7) • Bài 1: Cho biết danh sách khách hàng số điện thoại (MsKH, DT) đặt hàng có mã số 01 vào ngày 31/12/2014 Hãy trả lời câu hỏi ĐSQH tối ưu biểu thức • Bài 2: Cho biết mặt hàng mua đơn đặt hàng có mã số 01 không đủ hàng để cung cấp Hãy trả lời ngôn ngữ ĐSQH tối ưu câu hỏi ... sở liệu Bài 2:Mô hình liệu quan hệ Bài 3:Ngôn ngữ xử lý vấn tin Bài 4:Ràng buộc toàn vẹn Bài 5:Thiết kế sở liệu Bài 6:Các dạng chuẩn Bài 7:Tối ưu hóa câu hỏi Bài 1: Tổng quan CSDL 1.1 Định nghĩa... tài liệu cung cấp ngôn ngữ như: Đại số quan hệ, SQL (Structured Query Language) để sinh viên tạo CSDL truy vấn tốt số hệ quản trị CSDL NỘI DUNG HỌC PHẦN - Bài 1:Tổng quan sở liệu Bài 2:Mô hình liệu. .. •Làm giảm tình trạng liệu bị lưu trữ trùng lắp, bảo đảm tính quán việc truy xuất liệu tính toàn vẹn liệu •Có tính độc lập liệu chương trình ứng dụng Bài 1(tt) 1.4 Các mô hình liệu 1.4.1 Mô hình

Ngày đăng: 15/05/2017, 17:27

TỪ KHÓA LIÊN QUAN

w