Bài giảng môn học Cơ sở dữ liệu cung cấp cho người học các kiến thức: Các khái niệm của một hệ CSDL, các mô hình CSDL, mô hình dữ liệu quan hệ (của Codd), ngôn ngữ đại số quan hệ, ngôn ngữ SQL, ngôn ngữ tân từ,... Mời các bạn cùng tham khảo nội dung chi tiết.
Đại học Công Nghệ Thông Tin Môn: Cơ Sở Dữ Liệu Thời lượng: 45LT+30TH CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt Nội dung Bài 1: Các khái niệm hệ CSDL Bài 2: Các mơ hình CSDL Bài 3: Mơ hình liệu quan hệ (của Codd) Bài 4: Ngôn ngữ đại số quan hệ Bài 5: Ngôn ngữ SQL Bài 6: Ngơn ngữ tân từ Bài 7: Ràng buộc tồn vẹn CSDL Bài 8: Tối ưu hóa câu hỏi đại số quan hệ CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt Bài 1: Các khái niệm hệ CSDL CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt Bài 1: Các khái niệm hệ CSDL Giới thiệu Hệ thống tập tin (File System) Định nghĩa CSDL Các đối tượng sử dụng CSDL Hệ quản trị CSDL Các mức CSDL CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt Giới thiệu Tại cần phải có sở liệu? CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt Hệ thống tập tin Là tập hợp tập tin riêng lẻ phục vụ cho mục đích đơn vị sử dụng Ưu điểm: Triển khai ứng dụng nhanh Khả đáp ứng nhanh chóng, kịp thời (vì phục vụ cho mục đích hạn hẹp) Khuyết điểm: Trùng lắp liệu lãng phí, liệu khơng qn Chi phí cao Chia liệu CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt Cơ sở liệu (1) Định nghĩa: Cơ sở liệu hệ thống thơng tin có cấu trúc, lưu trữ thiết bị lưu trữ nhằm thỏa mãn yêu cầu khai thác thông tin đồng thời nhiều người sử dụng hay nhiều chương trình ứng dụng với mục đích khác CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt Cơ sở liệu (2) Ưu điểm: Giảm trùng lắp thông tin xuống mức thấp nhất, đảm bảo tính qn tồn vẹn liệu Đảm bảo liệu truy xuất theo nhiều cách khác Khả chia thông tin cho nhiều người, nhiều ứng dụng khác CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt Cơ sở liệu (3) Những vấn đề cần giải quyết: Tính chủ quyền liệu Tính bảo mật quyền khai thác thông tin người sử dụng Tranh chấp liệu Đảm bảo liệu có cố CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt Các đối tượng sử dụng Người sử dụng CSDL không chuyên lĩnh vực tin học CSDL -> cần cơng cụ để họ khai thác CSDL cần Chuyên viên tin học xây dựng ứng dụng để phục vụ cho mục đích quản lý Quản trị CSDL: tổ chức CSDL, bảo mật, cấp quyền, lưu, phục hồi liệu, giải tranh chấp liệu … CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt 10 Bảng tầm ảnh hưởng tổng hợp (2) R1 HOCVIEN GIAOVIEN T X S T + - + X S LOP T X MONHOC S T X S R2 R3 + - KETQUA THI T X S T X S + - + + - -* + - + -* R4 + - + R5 - R6 - R7 - - + R8 + + + R9 GIANGDAY - - -* + + - + + CuuDuongThanCong.com - + - + - - + + - + + - - + https://fb.com/tailieudientucntt 214 Bài 8: Tối ưu hóa câu hỏi CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt 215 Nội dung Giới thiệu Các nguyên tắc tổng quát để tối ưu hóa câu hỏi 2.1 Biểu thức tương đương 2.1.1 Định nghĩa 2.1.2 Tính chất phép kết phép tích 2.2 Nguyên tắc tổng quát 2.3 Các phép biến đổi tương đương Một số kỹ thuật tối ưu hóa câu hỏi ĐSQH 3.1 Kỹ thuật (dãy phép chọn, phép chiếu, hoán vị …) 3.2 Thuật giải tối ưu hoá câu hỏi CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt 216 Giới thiệu (1) Mục đích: Giảm thời gian xử lý câu hỏi, giảm khối lượng liệu trung gian Kết hợp phép tích, phép kết với phép chọn với phép chiếu Ví dụ: (( Q Q ) : A (( Q : A CuuDuongThanCong.com a )[ C ] a ) Q )[ C ] Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt 217 Giới thiệu (2) Ký hiệu: Q Q X Q A B D R Q=R[X] R Q=R:D R S A B Q=R S CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt 218 Giới thiệu (3) Ví dụ C C A A=a0 A=a0 Q1 CuuDuongThanCong.com Q2 Q1 Q2 (( Q Q ) : A A a )[ C ] (( Q : A Khoa HTTT-Đại học CNTT a ) Q )[ C ] https://fb.com/tailieudientucntt 219 2.1 Tính tương đương (1) 2.1.1 Định nghĩa: hai biểu thức A, B tương đương có tình trạng CSDL cho kết 2.1.2 Tính chất phép kết phép tích Phép kết Giao hoán Q1 Q2 Kết hợp Q1 (Q Phép tích Giao hốn: Kết hợp: CuuDuongThanCong.com Q1 Q3) (Q dk dk Q Q Q Q dk Q2 dk Q ( Q Q ) Q dk ) Q3 dk ( Q Q ) Q Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt 220 2.1 Tính tương đương (2) 2.1.3 Các phép biến đổi tương đương B Q ( A , B ) Q ( B , C ) (Q Q : Q 1[ B ] (Q Q2 : B D) Q [ B ]) B D Q ( A , B ) Q ( C , D ) Q1 Q2 (( Q ( X , , X n ) Q1( A, B ) Q1) ( (Q [ X ] Q ( A, B ) CuuDuongThanCong.com Q )) Q[X 2] Q 1[ B ] (( Q [ B ] Khoa HTTT-Đại học CNTT Q [ X n ]) Q ( X , , X n ) Q 2[ A] Q ( A , B ))[ B ] https://fb.com/tailieudientucntt 221 2.2 Nguyên tắc tổng quát Thực phép chiếu, phép chọn sớm tốt Gom phép chọn chiếu quan hệ để thực lúc Biến phép tích thành phép kết tự nhiên hay theta kết Tìm biểu thức chung biểu thức Tiền xử lý quan hệ: lập mục Đánh giá trước thực hiên tính tốn CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt 222 3.1 Các kỹ thuật tối ưu (1) Dãy phép chọn Dãy phép chiếu Hoán vị phép chiếu phép chọn Hoán vị phép chọn phép tích Hốn vị phép hợp phép chọn Hoán vị phép chọn phép trừ Hoán vị phép chiếu phép hội Hoán vị phép chiếu phép tích CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt 223 3.1 Các kỹ thuật tối ưu (2) Dãy phép chọn ((( Q : dk ) : dk ) : dkn ) Q : dk dk dkn Dãy phép chiếu ( Q [ Y ])[ Z ] Ví dụ: Cho Q[Z ], Z Y Q ( A, B ,C , D ) ( Q [ A , C , D ])[ AD ] CuuDuongThanCong.com Khoa HTTT-Đại học CNTT Q [ AD ] https://fb.com/tailieudientucntt 224 3.1 Các kỹ thuật tối ưu (3) Hoán vị phép chiếu phép chọn Nếu X Y ( Q : dk ( X ))[ Y ] Nếu X Y ( Q : dk ( X ))[ Y ] CuuDuongThanCong.com ( Q [ Y ]) : dk ( X ) (Q [ X Khoa HTTT-Đại học CNTT Y ]) : dk ( X ) https://fb.com/tailieudientucntt 225 3.1 Các kỹ thuật tối ưu (4) Hốn vị phép chọn phép tích: Điều kiện dk xác lập thuộc tính X ( Q ( X )) : dk ( X ) (Q ( X ) Q ( Y )) : dk Nếu dk dk dk ,2dk1 xác lập thuộc tính X, dk2 xác lập thuộc tính Y (( Q ( X ) Q (Y ) Q ( Y )) : dk ( X ) dk ( Y ) (( Q ( X ) : dk ) ( Q ( Y ) : dk ) Nếu dk1 xác lập thuộc tính X dk2 xác lập thuộc tính X Y (( Q ( X ) Q ( Y )) : dk ( X ) (( Q ( X ) : dk ) CuuDuongThanCong.com dk ( X ( Q ( Y )) : dk ( X Khoa HTTT-Đại học CNTT Y ) Y )) https://fb.com/tailieudientucntt 226 3.1 Các kỹ thuật tối ưu (5) Hoán vị phép hội phép chọn (Q1 Q ) : dk ( Q : dk ) ( Q : dk ) Hoán vị phép chọn phép trừ (Q1 Q ) : dk ( Q : dk ) ( Q : dk ) Hoán vị phép chiếu phép hội (Q Q )[ Z ] ( Q [ Z ]) ( Q [ Z ]) Hoán vị phép chiếu phép tích (Q ( X ) Q ( Y ))[ Z ] CuuDuongThanCong.com ( Q [Y Z ]) Khoa HTTT-Đại học CNTT ( Q [Y Z ]) , https://fb.com/tailieudientucntt Z X Y 227 3.2 Thuật toán Bước 1: Áp dụng phép biển đổi tương đương Bước 2: Áp dụng (1) Bước 3: Đối với phép chọn áp dụng (3), (4), (5), (6) nhằm đưa phép chọn sâu tốt Bước 4: Đối với phép chiếu áp dụng (2), (3), (7), (8) nhằm đưa phép chiếu sâu tốt Bước 5: Tập trung phép chọn để áp dụng (1) Kết hợp phép tích phép chọn để chuyển thành phép kết CuuDuongThanCong.com Khoa HTTT-Đại học CNTT https://fb.com/tailieudientucntt 228 ... lắp liệu lãng phí, liệu khơng qn Chi phí cao Chia liệu CuuDuongThanCong.com Khoa HTTT -Đại học CNTT https://fb.com/tailieudientucntt Cơ sở liệu (1) Định nghĩa: Cơ sở liệu hệ thống thơng tin. .. (1:1) (one-to-one): mẫu tin loại mẫu tin chủ kết hợp với mẫu tin loại mẫu tin thành viên (1:n) (one-to-many): mẫu tin loại mẫu tin chủ kết hợp với hay nhiều mẫu tin thành viên (n:1) (many-to-one):... Bài 1: Các khái niệm hệ CSDL Bài 2: Các mơ hình CSDL Bài 3: Mơ hình liệu quan hệ (của Codd) Bài 4: Ngôn ngữ đại số quan hệ Bài 5: Ngôn ngữ SQL Bài 6: Ngơn ngữ tân từ Bài 7: Ràng buộc