Bài giảng Các hệ quản trị CSDL - Chương 1: Tổng quan - Đại học Sư phạm TP.HCM

pdf 46 trang ngocly 12870
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Các hệ quản trị CSDL - Chương 1: Tổng quan - Đại học Sư phạm TP.HCM", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_cac_he_quan_tri_csdl_chuong_1_tong_quan_dai_hoc_su.pdf

Nội dung text: Bài giảng Các hệ quản trị CSDL - Chương 1: Tổng quan - Đại học Sư phạm TP.HCM

  1. CÁC HỆ QUẢN TRỊ CSDL ĐẠI HỌC SƯ PHẠM TP.HCM KHOA CÔNG NGHỆ THÔNG TIN Phiên bản 2015
  2. Nội dung học phần Chương 1. TỔNG QUAN Chương 2. TỔ CHỨC LƯU TRỮ Chương 3. TỐI ƯU TRUY VẤN Chương 4. LẬP TRÌNH VỚI CURSORS Chương 5. XỬ LÝ TRUY XUẤT ĐỒNG THỜI Chương 6. CSDL PHÂN TÁN Chương 7. AN TOÀN DỮ LIỆU
  3. CÁC HỆ QUẢN TRỊ CSDL CHƯƠNG 1: TỔNG QUAN
  4. Tài liệu tham khảo [1] Nguyễn An Tế, Nguyễn Tiến Dũng, Nguyễn Thúy Ngọc, Slide bài giảng Các hệ CSDL, 2011-2012 [2] Lê Minh Triết, Slide bài giảng DBMS, 2010-2014 [3] Bộ môn HTTT, Khoa CNTT, ĐHKHTN, Bài giảng DBMS. [4] Ramez Elmasri, Shamkant B. Navathe, Fundamentals of Database Systems, 4th Edition, 2003. [5] Jeffrey D. Ullman, Jennifer Widom, Hector Garcia- Monlina, Database Systems: The complete Book, 2001.
  5. Chương 1. TỔNG QUAN 1. Cơ sở dữ liệu (CSDL) 1.1 Giới thiệu 1.2 Lịch sử phát triển 1.3 Đặc điểm của cách tiếp cận CSDL 1.4 Lợi ích của cách tiếp cận CSDL 2. Hệ quản trị cơ sở dữ liệu (HQT-CSDL) 2.1 Các loại mô hình 2.2 Phân loại các HQT-CSDL 2.3 Kiến trúc của các hệ QT-CSDL
  6. 2. Hệ quản trị cơ sở dữ liệu (HQT-CSDL) 2.1 Các loại mô hình:  Mô hình dữ liệu mô tả cách tổ chức dữ liệu bên trong CSDL.  Mô hình dữ liệu còn mô tả mối quan hệ dữ liệu và các ràng buộc được định nghĩa trên dữ liệu đó.
  7. 2.1 Các loại mô hình o Mô hình dữ liệu phân cấp o Mô hình dữ liệu mạng o Mô hình dữ liệu quan hệ o Mô hình thực thể kết hợp o Mô hình dữ liệu hướng đối tượng
  8. 2.1 Các loại mô hình Mô hình dữ liệu phân cấp KQua Hierarchical data model DiemTH DiemLT  Mô hình là một cây (tree)  Mỗi nút của cây biểu diễn một thực thể HPhan SVien TenHP SLuong TenSV Lop Nganh  Giữa nút con và nút cha liên hệ với nhau theo 1 mối quan hệ xác định MHoc  Dữ liệu và mối quan hệ TenMH Khoa TinChi được biểu diễn bằng các record và link
  9. 2.1 Các loại mô hình Mô hình dữ liệu mạng Network data model MHoc o Dữ liệu: tập các mẫu tin MHOC_SAU MHOC_MO o Mối quan hệ giữa các dữ liệu: các link MHOC_TRUOC SVien HPhan DKien o Các mẫu tin được tổ chức thành tập các đồ SVIEN_DIEM KQUA_HPHAN thị tùy ý KQua
  10. Mặt hạn chế Mô hình dữ liệu mạng Network data model
  11. 2.1 Các loại mô hình M.H. dữ liệu phân cấp Hierarchical data model Mô hình dữ liệu mạng Network data model  Khả năng diễn đạt ngữ nghĩa kém so với các mối liên hệ phức tạp của dữ liệu trong thực tế  Mô hình thể hiện ở cấp thấp gần với mức lưu trữ: khó khăn khi môi trường ứng dụng thay đổi
  12. 2.1 Các loại mô hình MH thực thể kết hợp Entity relationship model oThực thể (Entity) là các đối tượng, nơi chốn, con người cần lưu giữ thông tin. oThực thể được đặt tên và được vẽ trong hình chữ nhật. o Thuộc tính khóa MaSV Ten Svien o Lop Thuộc tính (Tên) Nganh
  13. 2.1 Các loại mô hình MH thực thể kết hợp Entity relationship model oThực thể có 2 loại là thực thể độc lập và thực thể phụ thuộc. oThực thể phụ thuộc còn được gọi là thực thể yếu là thực thể mà sự tồn tại của nó phụ thuộc vào một thực thể khác. oThực thể yếu được mô tả bằng hình chữ nhật có các cạnh bên ngoài là cạnh kép.
  14. 2.1 Các loại mô hình MH thực thể kết hợp Entity relationship model Mối quan hệ thể hiện sự cộng tác giữa 2 thực thể, được thể hiện bằng hình thoi chính giữa có tên quan hệ đó. Mối quan hệ có thể được tồn tại trên 2 thực thể hoặc trên cùng 1 thực thể. Giữa hai thực thể có thể có nhiều mối quan hệ. Quan hệ 1 – 1 | Quan hệ 1 – n | Quan hệ n - n
  15. 2.1 Các loại mô hình Ví dụ mô hình dữ liệu thực thể kết hợp Diem MaHP Hocky Nam Gvien (0,n) (1,1) hoc HPhan mo mhoctruoc MaSV (1,n) MaMH (0,n) Ten TenMH Lop SVien Khoa MHoc Nganh Tinchi (0,n) dieukien (0,n) mhocsau
  16. 2.1 Các loại mô hình MH dữ liệu quan hệ Relational data model o Sử dụng bảng 2 chiều (quan hệ) để biểu diễn cho dữ liệu và mối quan hệ. SVien o Thuộc tính MaSV o Lược đồ quan hệ Ten o Bộ Lop o Quan hệ Nganh o Khóa
  17. 2.1 Các loại mô hình Ví dụ mô hình dữ liệu quan hệ SVien Hoc HPhan MaSV MaSV MaHP Ten MaHP SLuong Lop DiemLT MaMH Nganh DiemTH MHoc DKien MaMH MaMH TenMH MaMHTruoc Khoa TinChi
  18. 2.1 Các loại mô hình MH hướng đối tượng Object oriented data model Dựa trên cách tiếp cận hướng đối tượng bao gồm các khái niệm o Lớp (class) o Kế thừa (inheritance) o Kế thừa bội (multi-inheritance) o Tính đóng gói (encapsulation) o Tính đa hình (polymorphism) Đặc trưng cơ bản o Tái sử dụng (reuse)
  19. 2.1 Các loại mô hình Ví dụ mô hình dữ liệu hướng đối tượng SVien Ten HPhan Lop hoc Ten Nganh SLuong 1 * 0 * LapTKB() InBangDiem() 1 Diem mo DiemTH DiemLT DiemPrj 0 * SuaDiem() MHoc Ten +MHoc truoc Khoa SoTinChi 0 * CapNhatSTC() Dieu kien 0 * +MHoc sau
  20. 2. Hệ quản trị cơ sở dữ liệu (HQT-CSDL) 2.2 Phân loại các HQT-CSDL Các tiêu chí phân loại  Mô hình dữ liệu  Số người sử dụng  Số trạm  Mục tiêu
  21. 2.2 Phân loại các HQT-CSDL  Dựa vào mô hình dữ liệu o Mô hình dữ liệu phân cấp o Mô hình dữ liệu mạng o Mô hình thực thể kết hợp o Mô hình dữ liệu quan hệ o Mô hình dữ liệu hướng đối tượng
  22. 2.2 Phân loại các HQT-CSDL  Dựa vào số người sử dụng – 1 người sử dụng – Nhiều người sử dụng
  23. 2.2 Phân loại các HQT-CSDL  Dựa vào số trạm o CSDL tập trung (trên 1 máy và 1 CSDL) o CSDL phân tán (nhiều máy sử dụng, nhiều CSDL)
  24. 2.2 Phân loại các HQT-CSDL  Dựa vào mục đích sử dụng  Mục đích thông dụng  Mục đích đặc biệt: đặt vé máy bay, hệ thống danh mục điện thoại DBMS cần phải hỗ trợ chức năng giải quyết tranh chấp đồng thời lớn  Phân tích dữ liệu
  25. 2.3 Kiến trúc của hệ quản trị CSDL 2.3.1. Kiến trúc Three-Schema (kiến trúc 3 lược đồ) 2.3.2 Tổ chức hệ CSDL 2.3.3 Các modules của HQT-CSDL
  26. 2.3 Kiến trúc của hệ quản trị CSDL
  27. 2.3 Kiến trúc của hệ quản trị CSDL
  28. 2.3.1. Kiến trúc Three-Schema (K.T. 3 lược đồ)
  29. 2.3.1. Kiến trúc Three-Schema (K.T. 3 lược đồ)  Mức bên trong (Internal Level) Mô tả cách tổ chức vật lý của CSDL o Mô tả cấu trúc lưu trữ dùng để truy xuất thông tin hiệu quả o Sử dụng lược đồ dữ liệu vật lý
  30. 2.3.1. Kiến trúc Three-Schema (K.T. 3 lược đồ)  Mức quan niệm (Conceptual Level) o Mô hình hóa thế giới thực o Định nghĩa cấu trúc, kiểu dữ liệu o Sử dụng mô hình quan niệm dữ liệu (Conceptual Schema)
  31. 2.3.1. Kiến trúc Three-Schema (K.T. 3 lược đồ)  Mức bên ngoài (External Level) o Mô tả các khung nhìn bên ngoài (External view) của end-users o Đảm bảo mức độ an toàn dữ liệu
  32. 2.3.1. Kiến trúc Three-Schema (K.T. 3 lược đồ) Ánh xạ (Mapping) Quá trình chuyển tải yêu cầu và kết quả trả về giữa các mức với nhau
  33. 2.3.1. Kiến trúc Three-Schema (K.T. 3 lược đồ) Kiến trúc Three-Schema thể hiện tính độc lập dữ liệu (Data Independence): o Độc lập dữ liệu ở mức vật lý o Độc lập dữ liệu ở mức logic
  34. 2.3.1. Kiến trúc Three-Schema (K.T. 3 lược đồ) Việc tổ chức lại hay thay đổi CSDL vật lý: - làm thay đổi hiệu quả tính toán của chương trình ứng dụng - không đòi hỏi viết lại chương trình
  35. 2.3.1. Kiến trúc Three-Schema (K.T. 3 lược đồ) Việc thay đổi lược đồ quan niệm: - thêm thông tin, thay đổi ràng buộc, thêm thực thể - không làm thay đổi, ảnh hưởng đến chương trình ứng dụng
  36. 2.3.2 Tổ chức hệ CSDL Centralized Three-Tier Client/Server DBMS Client/Server
  37. 2.3.2 Tổ chức hệ CSDL Centralized DBMS 1 máy tính bao gồm tất cả: o HQT-CSDL (SQL Server, Oracle, ) o Phần mềm triển khai + tiện ích (.NET, ) o Chương trình ứng dụng (Quản lý giáo vụ, )
  38. 2.3.2 Tổ chức hệ CSDL Kiến trúc Client/Server Client kết nối với server (LAN, WAN) tham gia thực hiện một số chức năng: o Giao tiếp giữa người dùng và hệ thống o Gửi yêu cầu được truy cập tài nguyên tại server
  39. 2.3.2 Tổ chức hệ CSDL Kiến trúc Client/Server Server thực hiện các chức năng chuyên biệt: o File Server o Printer Server o Web Server o Email Server
  40. 2.3.2 Tổ chức hệ CSDL Kiến trúc Client/Server  ODBC (Open Database Connectivity): cung cấp API (Application Program Interface) cho phép từ Client có thể gọi thực hiện ứng dụng trên HQT-CSDL  Từ Client có thể kết nối với nhiều HQT-CSDL  Hầu hết các HQT-CSDL hiện nay đều cung cấp driver ODBC
  41. 2.3.2 Tổ chức hệ CSDL Kiến trúc 3 lớp Client/Server  Phổ biến đối với các ứng dụng Web  Bổ sung thêm tầng giữa (trung gian): Application Server hay Web Server o Chứa phần mềm kết nối, quy tắc ràng buộc dữ liệu, o Đóng vai trò cầu nối trung gian giữa việc chuyển đổi thông tin từ client đến server
  42. 2.3.2 Tổ chức hệ CSDL Kiến trúc 3 lớp Client/Server Client Application Server Web Server Database Server
  43. 3.3 Các modules của HQT-CSDL Reference: Fundamentals of DB Systems 4th Edition (Ramez Elmasri, Shamkant B.Navathe)
  44. 3.3 Các modules của HQT-CSDL  DML compiler: thực hiện việc định nghĩa lược đồ (meta-data) trong DBMS catalog  DBMS catalog: chứa thông tin về tên, kích thước file, kiểu dữ liệu, nơi lưu trữ của từng file, các ràng buộc  Runtime DB processor: quản lý việc truy cập DB tại thời gian thực, ghi lại các hoạt động cập nhật trên DB
  45. 3.3 Các modules của HQT-CSDL Query Compiler: biên dịch câu lệnh truy vấn tương tác mà người dùng nhập vào
  46. 3.3 Các modules của HQT-CSDL Precompiler: lấy câu lệnh DML từ chương trình ứng dụng được viết bằng ngôn ngữ lập trình tổng quát