Bài giảng Hệ quản trị cơ sở dữ liệu - Chương 1: Tổng quan về hệ quản trị cơ sở dữ liệu

ppt 68 trang hapham 3100
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Hệ quản trị cơ sở dữ liệu - Chương 1: Tổng quan về hệ quản trị cơ sở dữ liệu", để 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:

  • pptbai_giang_he_quan_tri_co_so_du_lieu_chuong_1_tong_quan_ve_he.ppt

Nội dung text: Bài giảng Hệ quản trị cơ sở dữ liệu - Chương 1: Tổng quan về hệ quản trị cơ sở dữ liệu

  1. TỔNG QUAN VỀ HỆ QUẢN TRỊ CƠ SỞ DỮ LiỆU DATABASE MANAGEMENT SYSTEM
  2. Nội dung ⚫ Giới thiệu ⚫ Quá trình phát triển ⚫ Một số đặc tính của CSDL ⚫ Người sử dụng CSDL ⚫ Kiến trúc của HQT CSDL ⚫ Các tính năng của HQT CSDL ⚫ Các khái niệm ⚫ Ngơn ngữ CSDL Chương 1 : Nhập mơn Hệ Quản Trị CSDL 2
  3. MỤC TIÊU ⚫ Trình bày cái nhìn bao quát về cơ sở dữ liệu (Database) cũng như về hệ quản trị cơ sở dữ liệu (DBMS), hệ Cơ sở dữ liệu (Database System). ⚫ Các yêu cầu khi xây dựng một DBMS. ⚫ Một số khái niệm quan trọng: giao tác (transaction), concurrent control, khơi phục sau sự cố ⚫ Hiểu cấu trúc tổng thể của một DBMS. ⚫ Hiểu vai trị của người sử dụng hệ thống. Chương 1 : Nhập mơn Hệ Quản Trị CSDL 3
  4. QUÁ TRÌNH PHÁT TRIỂN CỦA CÁC HỆ THỐNG QUẢN LÝ DỮ LiỆU ⚫ Tập tin (File) Chương trình ứng dụng 1 Quản lý dữ liệu Tập Hệ tin Thống Chương trình ứng dụng 2 Quản Tập Lý Quản lý dữ liệu tin Tập Tin Chương trình ứng dụng 3 Tập Dữ liệu Quản lý dữ liệu tin Chương 1 : Nhập mơn Hệ Quản Trị CSDL 4
  5. MỘT THÍ DỤ Course data file Course scheduling application Student data file Student admission Student data file application Instructor data file Instructors schedules application Course data file Semester planning Semeter data file application Course data file Chương 1 : Nhập mơn Hệ Quản Trị CSDL 5
  6. Những lợi ích Course data file Course scheduling application Student data file Student admission application Instructor data file Instructors schedules application Semester planning Semeter data file application Chương 1 : Nhập mơn Hệ Quản Trị CSDL 6
  7. MỘT SỐ KHÁI NiỆM CƠ BẢN ⚫ Database : Cơ sở dữ liệu một tập các dữ liệu cĩ liên quan với nhau được tổ chức và lưu trữ theo một định dạng nào đĩ nhằm làm làm giảm thiểu sự dư thừa dữ liệu và cĩ thể phục vụ cho nhiều user đồng thời. MANAGER CUSTOMERS ACCOUNT ADMIN SALES HR Chương 1 : Nhập mơn Hệ Quản Trị CSDL 7
  8. Database ⚫ Ví dụ ⚫ Kinh doanh Thơng tin ⚫ Ngân hàng và tài chính ⚫ Giáo dục Chọn lọc ⚫ Hành chính ⚫ Giải trí Dữ liệu ⚫ ⚫ Dữ liệu (Data) ⚫ Một mơ tả hình thức về thơng tin và hoạt động ⚫ Tên, địa chỉ, số điện thoại của khách hàng ⚫ Báo cáo doanh thu ⚫ Đăng ký học phần Chương 1 : Nhập mơn Hệ Quản Trị CSDL 8
  9. Database (tt) ⚫ Cơ sở dữ liệu (Database) ⚫ Một tập hợp cĩ cấu trúc của những dữ liệu cĩ liên quan với nhau được lưu trữ trong máy tính ⚫ Danh sách sinh viên ⚫ Niên giám điện thoại ⚫ Danh mục các đề án ⚫ Một CSDL biểu diễn một phần của thế giới thực (thế giới thu nhỏ) ⚫ CSDL được thiết kế, xây dựng, và lưu trữ với một mục đích xác định, phục vụ cho một số ứng dụng và người dùng ⚫ Tập ngẫu nhiên của các dữ liệu khơng thể xem là một CSDL. Chương 1 : Nhập mơn Hệ Quản Trị CSDL 9
  10. Một ví dụ về CSDL NHANVIEN HONV TENLOT TENNV MANV NGSINH MA_NQL PHG Tran Hong Quang 123456789 03/09/1969 987654321 4 Nguyen Thanh Tung 333445555 12/08/1955 888665555 5 Nguyen Manh Hung 666884444 09/15/1962 333445555 5 Tran Thanh Tam 453453453 07/31/1972 333445555 5 DEAN TENDA MADA DDIEM_DA PHONG San pham X 1 VUNG TAU 5 San pham Y 2 NHA TRANG 5 San pham Z 3 TP HCM 5 Tin hoc hoa 10 HA NOI 4 PHANCONG MA_NVIEN SODA THOIGIAN 123456789 1 32.5 123456789 2 7.5 666884444 3 40.0 453453453 1 20.0 Chương 1 : Nhập mơn Hệ Quản Trị CSDL 10
  11. DBMS (Database Management System) ⚫ Hệ quản trị CSDL (Database Management System) ⚫ Một phần mềm hệ thống cho phép định nghĩa, xây dựng xử lý và bảo trì dữ liệu ⚫ Định nghĩa – khai báo bộ khung dữ liệu cùng với các mơ tả chi tiết về dữ liệu thơng qua DDL ⚫ Xây dựng – lưu trữ dữ liệu lên bộ nhớ phụ ⚫ Xử lý – truy vấn, cập nhật và phát sinh báo cáo thơng qua DML. ⚫ Bảo trì : cho phép bảo trì dữ liệu ở trạng thái nhất quán trước khi hư hỏng phần cứng hoặc phần mềm. Chương 1 : Nhập mơn Hệ Quản Trị CSDL 11
  12. DBMS (tt) ⚫ phần mềm cung cấp các cơng cụ để xây dựng và quản lý CSDL. Chương 1 : Nhập mơn Hệ Quản Trị CSDL 12
  13. HỆ CƠ SỞ DỮ LiỆU ⚫ Một phần mềm cho phép xây dựng một DBMS ❑ Một số bất lợi khi lưu trữ thơng tin trong hệ thống file thơng thường. (flat file) : dư thừa dữ liệu ➔ dữ liệu khơng nhất quán khĩ khăn trong việc truy xuất dữ liệu. Sự cơ lập dữ liệu. Các vấn đề về tính nguyên tử. Vấn đề an tồn Tính bất thường trong truy xuất cạnh tranh. Chương 1 : Nhập mơn Hệ Quản Trị CSDL 13
  14. Hệ CSDL (tt) Người sử dụng/Lập trình viên Chương trình ứng dụng/Truy vấn HQT CSDL Xử lý truy vấn Truy xuất dữ liệu Định nghĩa Catalog CSDL CSDL Hệ CSDL Chương 1 : Nhập mơn Hệ Quản Trị CSDL 14
  15. Quá trình phát triển (tt) ⚫ Hạn chế: Nếu lưu giữ thơng tin cĩ tổ chức trong hệ thống tập tin thơng thường sẽ gặp nhiều bất lợi: ⚫ Dư thừa dữ liệu và tính khơng nhất quán ⚫ Gặp khĩ khăn trong việc truy xuất dữ liệu ⚫ Sự cơ lập dữ liệu ⚫ Tính nguyên tử ⚫ Tính truy xuất cạnh tranh ⚫ An tồn dữ liệu Chương 1 : Nhập mơn Hệ Quản Trị CSDL 15
  16. Dư thừa dữ liệu và tính khơng nhất quán ⚫ Do các file và các trình ứng dụng được tạo ra bởi các người lập trình khác nhau, nên các file cĩ định dạng khác nhau, các chương trình được viết trong các ngơn ngữ lập trình khác nhau, cùng một thơng tin cĩ thể được lưu giữ trong các file khác nhau. Tính khơng thống nhất và dư thừa này sẽ làm tăng chi phí truy xuất và lưu trữ, hơn nũa, nĩ sẽ dẫn đến tính khơng nhất quán của dữ liệu: các bản sao của cùng một dữ liệu cĩ thể khơng nhất quán. Chương 1 : Nhập mơn Hệ Quản Trị CSDL
  17. Khĩ khăn trong việc truy xuất dữ liệu ⚫ Mơi trường của hệ thống xử lý file thơng thường khơng cung cấp các cơng cụ cho phép truy xuất thơng tin một cách hiệu quả và thuận lợi. Chương 1 : Nhập mơn Hệ Quản Trị CSDL
  18. Sự cơ lập dữ liệu ⚫ Các giá trị dữ liệu được lưu trữ trong cơ sở dữ liệu phải thoả mãn một số các ràng buộc về tính nhất quán của dữ liệu (ràng buộc nhất quán/consistency contraints ). Trong hệ thống xử lý file thơng thường, rất khĩ khăn trong việc thay đổi các chương trình để thoả mãn các yêu cầu thay đổi ràng buộc. Vấn đề trở nên khĩ khăn hơn khi các ràng buộc liên quan đến các hạng mục dữ liệu nằm trong các file khác nhau. Chương 1 : Nhập mơn Hệ Quản Trị CSDL
  19. Tính nguyên tử ⚫ Tính nguyên tử của một hoạt động (giao dịch) là: hoặc nĩ được hồn tất trọn vẹn hoặc khơng cĩ gì cả. Điều này cĩ nghĩa là một hoạt động (giao dịch) chỉ làm thay đổi các dữ liệu bền vững khi nĩ đã hồn tất (kết thúc thành cơng) nếu khơng, giao dịch khơng để lại một dấu vết nào trên CSDL. Trong hệ thống xử lý file thơng thường khĩ đảm bảo được tính chất này. Chương 1 : Nhập mơn Hệ Quản Trị CSDL
  20. Tính truy xuất cạnh tranh ⚫ Một hệ thống cho phép nhiều người sử dụng cập nhật dữ liệu đồng thời, cĩ thể dẫn đến kết quả là dữ liệu khơng nhất quán. Điều này địi hỏi một sự giám sát. Hệ thống xử lý file thơng thường khơng cung cấp chức năng này. Chương 1 : Nhập mơn Hệ Quản Trị CSDL
  21. An tồn dữ liệu ⚫ Một người sử dụng hệ cơ sở dữ liệu khơng cần thiết và cũng khơng cĩ quyền truy xuất tất cả các dữ liệu. Vấn đề này địi hỏi hệ thống phải đảm bảo được tính phân quyền, chống truy xuất trái phép Chương 1 : Nhập mơn Hệ Quản Trị CSDL
  22. Các khung nhìn dữ liệu ⚫ Hệ CSDL cho phép nhiều người dùng thao tác lên cùng một CSDL ⚫ Mỗi người địi hỏi một cách nhìn (view) khác nhau về CSDL ⚫ Một view là ⚫ Một phần của CSDL hoặc ⚫ Dữ liệu tổng hợp từ CSDL Chương 1 : Nhập mơn Hệ Quản Trị CSDL 22
  23. Gĩc nhìn dữ liệu (Data View) ⚫ Mức khung nhìn (View Level) ⚫ Mơ tả 1 phần nào đĩ của tồn bộ hệ thống. ⚫ Mức luận lý (Logical level) ⚫ Những thơng tin gì được lưu trữ trong CSDL ? ⚫ Cĩ những mối quan hệ nào giữa những thơng tin đĩ? ⚫ Mức vật lý (Physical Level) View Level ⚫ Dữ liệu được lưu trữ như thế nào? View 1 View 2 View n Logical Level Physical Level Chương 1 : Nhập mơn Hệ Quản Trị CSDL 23
  24. Gĩc nhìn dữ liệu (tt) type customer = record customer-id: string; customer-name: string; customer-street: string; cusomter-city: string; end; ⚫ Mức vật lý ⚫ Mẫu tin customer là 1 block các byte liên tiếp nhau ⚫ Mức luận lý ⚫ customer và các mối liên kết được định nghĩa ⚫ Mức khung nhìn ⚫ Người sử dụng chỉ được truy xuất đến 1 phần thơng tin của customer Chương 1 : Nhập mơn Hệ Quản Trị CSDL 24
  25. Các đặc trưng của dữ liệu ⚫ Cĩ tính ít dư thừa dữ liệu ⚫ Chia sẻ cho nhiều người sử dụng ⚫ Cĩ tính an tồn, bảo mật ⚫ Cho phép truy xuất đồng thời ⚫ Cĩ thể khơi phục khi cĩ sự cố ⚫ Cĩ tính độc lập ⚫ Vật lý (physical) ⚫ Khi thay đổi tổ chức vật lý của CSDL thì khơng làm ảnh hưởng đến chương trình đang khai thác CSDL đĩ ⚫ Luận lý (logical) ⚫ Khi thay đổi mức quan niệm khơng làm ảnh hưởng đến các chương trình đang khai thác CSDL Chương 1 : Nhập mơn Hệ Quản Trị CSDL 25
  26. THỂ HiỆN & LƯỢC ĐỒ ⚫ Thể hiện : tập các dữ liệu được lưu trữ trong CSDL tại 1 thời điểm được gọi là 1 thể hiện của CSDL. ⚫ Lược đồ : Thiết kế tổng thể của CSDL gọi là lược đồ. Chương 1 : Nhập mơn Hệ Quản Trị CSDL 26
  27. Lược đồ ⚫ Lược đồ CSDL (Database Schema) ⚫ Là các mơ tả về cấu trúc và ràng buộc trên CSDL SVien Ten MaSV Nam Khoa Mhoc TenMH MaMH TinChi Khoa DKien MaMH MaMH_Truoc KHoc MaKH MaMH HocKy Nam GV KQua MaKH MaSV Diem Chương 1 : Nhập mơn Hệ Quản Trị CSDL 27
  28. Thể hiện ⚫ Thể hiện CSDL (Database Instance) ⚫ Là dữ liệu hiện thời được lưu trữ trong CSDL ở một thời điểm nào đĩ ⚫ Tình trạng của CSDL Mhoc TenMH MaMH TinChi Khoa KQua MaSV MaKH Diem Nhap mon tin hoc COSC1310 4 CNTT 17 112 8 Cau truc du lieu COSC3320 4 CNTT 17 119 6 8 85 10 Toan roi rac MATH2410 3 TOAN 8 92 9 Co so du lieu COSC3380 3 CNTT 8 102 8 8 135 10 SVien Ten MaSV Nam Khoa DKien MaMH MaMH_Truoc Son 17 1 CNTT COSC3380 COSC3320 Bao 8 2 CNTT COSC3380 MATH2410 COSC3320 COSC3380 Chương 1 : Nhập mơn Hệ Quản Trị CSDL 28
  29. Kiến trúc của HQT CSDL ⚫ Kiến trúc 3 lược đồ Mức ngồi Người dùng Người dùng Lược đồ ngồi 1 Lược đồ ngồi n Ánh xạ ngồi/ Ánh xạ quan niệm Mức quan niệm Lược đồ quan niệm Ánh xạ quan niệm/ Ánh xạ trong Lược đồ trong Mức trong Chương 1 : Nhập mơn Hệ Quản Trị CSDL 29
  30. Kiến trúc của HQT CSDL (tt) ⚫ Mức trong (lược đồ trong) ⚫ Mơ tả cấu trúc lưu trữ vật lý CSDL. ⚫ Mức quan niệm (lược đồ quan niệm) ⚫ Mơ tả cấu trúc của tồn thể CSDL cho 1 cộng đồng người sử dụng, gồm thực thể, kiểu dữ liệu, mối liên hệ và ràng buộc. ⚫ Che bớt các chi tiết của cấu trúc lưu trữ vật lý. ⚫ Mức ngồi (lược đồ ngồi) ⚫ Cịn gọi là mức khung nhìn (view). ⚫ Mơ tả một phần của CSDL mà 1 nhĩm người dùng quan tâm đến và che dấu phần cịn lại của CSDL đối với nhĩm người dùng đĩ. Chương 1 : Nhập mơn Hệ Quản Trị CSDL 30
  31. Kiến trúc của HQT CSDL (tt) ⚫ Độc lập dữ liệu ⚫ Độc lập logic ⚫ Khả năng thay đổi lược đồ quan niệm mà khơng thay đổi lược đồ ngồi hoặc các CTƯD ⚫ Độc lập vật lý ⚫ Khả năng thay đổi lược đồ trong mà khơng làm thay đổi lược đồ quan niệm cũng như lược đồ ngồi Chương 1 : Nhập mơn Hệ Quản Trị CSDL 31
  32. Kiến trúc của DBMS User/Application Database Administrator Transaction Commands Queries, Updates DDL Commands Transaction Query Compiler DDL Compiler Manager Metadata, Statistics Query plan Metadata Execution Logging & Concurrency Engine Recovery Control Index, File & Record Request Index/File/ Log Pages Record Manager Data, Lock Table Metadata, Page Commands Indexes BufferBuffer Buffers ManagerManager Read/Write Pages Storage Manager StorageStorage Chương 1 : Nhập mơn Hệ Quản Trị CSDL 32
  33. Phân loại DBMS ⚫ Theo mơ hình dữ liệu ⚫ Mạng (Network) ⚫ Phân cấp (Hierarchical) ⚫ Quan hệ (Relation) ⚫ Hướng đối tượng (Oriented-Object) ⚫ XML ⚫ Theo kiến trúc ⚫ Đơn người dùng ⚫ Client/Server ⚫ Khác ⚫ Multimedia ⚫ Hypertext Chương 1 : Nhập mơn Hệ Quản Trị CSDL 33
  34. Các thành phần chính của DBMS Ngơn ngữ Quản lý giao tiếp Quản lý khơi phục giao tác An tịan Quản lý Xử lý bảo mật lưu trữ truy vấn Chương 1 : Nhập mơn Hệ Quản Trị CSDL 34
  35. Các tính năng của HQT CSDL ⚫ Kiểm sốt được tính dư thừa của dữ liệu ⚫ Tích hợp các nhu cầu dữ liệu của người dùng để xây dựng một CSDL thống nhất ⚫ Chia sẻ dữ liệu ⚫ Trong mơi trường đa người dùng, các HQT phải cho phép truy xuất dữ liệu đồng thời ⚫ Hạn chế những truy cập khơng cho phép ⚫ Từng người dùng và nhĩm người dùng cĩ một tài khoản và mật mã để truy xuất dữ liệu ⚫ Cung cấp nhiều giao diện ⚫ HQT cung cấp ngơn ngữ giữa CSDL và người dùng Chương 1 : Nhập mơn Hệ Quản Trị CSDL 35
  36. Các tính năng của HQT CSDL (tt) ⚫ Các tính năng khác ⚫ Chuẩn hĩa ⚫ Cho phép DBA định nghĩa và bắt buộc áp dụng một chuẩn thống nhất cho mọi người dùng ⚫ Uyển chuyển ⚫ Khi nhu cầu cơng việc thay đổi, cấu trúc CSDL rất cĩ thể thay đổi, HQT cho phép thêm hoặc mở rộng cấu trúc mà khơng làm ảnh hưởng đến CTƯD ⚫ Giảm thời gian phát triển ứng dụng ⚫ Tính khả dụng ⚫ Khi cĩ một sự thay đổi lên CSDL, tất cả người dùng đều thấy được Chương 1 : Nhập mơn Hệ Quản Trị CSDL 36
  37. Các tính năng của HQT CSDL (tt) ⚫ Đảm bảo các ràng buộc tồn vẹn ⚫ RBTV (Integrity Constraints) là những qui định cần được thỏa mãn để đảm bảo dữ liệu luơn phản ánh đúng ngữ nghĩa của thế giới thực ⚫ Một số RB cĩ thể được khai báo với HQT và HQT sẽ tự động kiểm tra. Một số RB khác được kiểm tra nhờ CTƯD ⚫ Khả năng sao lưu dự phịng khi gặp sự cố ⚫ Cĩ khả năng khơi phục dữ liệu khi cĩ sự hư hỏng về phần cứng hoặc phần mềm Chương 1 : Nhập mơn Hệ Quản Trị CSDL 37
  38. Ngơn ngữ giao tiếp ⚫ DBMS cung cấp giao diện lập trình dể sử dụng với một ngơn ngữ lập trình CSDL ⚫ SQL Server: Transaction-SQL (T-SQL) ⚫ Oracle: PL/SQL ⚫ Ngơn ngữ bao gồm ⚫ Định nghĩa dữ liệu ⚫ Thao tác dữ liệu Chương 1 : Nhập mơn Hệ Quản Trị CSDL 38
  39. Quản lý giao tác ⚫ Thành phần quản lý các giao tác cĩ ảnh hưởng đến CSDL ⚫ Giao tác là một nhĩm các hành động mà nếu thực hiện được thì phải thực hiện hết tất cả các hành động trong giao tác đĩ, ngược lại xem như khơng thực hiện hành động nào 1 2 3 transaction 4 5 7 8 Chương 1 : Nhập mơn Hệ Quản Trị CSDL 39
  40. Quản lý giao tác (tt) ⚫ Nhật ký ⚫ Để CSDL được bền vững (durable), mọi thay đổi lên CSDL phải được ghi nhận lại ⚫ Log manager – ghi chép nhật ký ⚫ Đảm bảo CSDL vẫn nguyên vẹn khi cĩ sự cố xãy ra ⚫ Recovery manager – khơi phục ⚫ Dựa vào nhật ký để phục hồi lại CSDL về trạng thái nhất quán trước đĩ ▪ Trạng thái thỏa tất cả các RBTV của CSDL đĩ Chương 1 : Nhập mơn Hệ Quản Trị CSDL 40
  41. Quản lý giao tác (tt) ⚫ Điều khiển đồng thời ⚫ Bộ lập lịch (scheduler) - cĩ nhiệm vụ lập 1 lịch thực hiện từ n giao tác được kích hoạt đồng thời ⚫ Cơ chế khĩa (lock) - ngăn 2 giao tác cùng thao tác lên 1 đơn vị dữ liệu tại 1 điểm DBMS DB Server Equivalent to serial result Client Client Client Scheduler Chương 1 : Nhập mơn Hệ Quản Trị CSDL 41
  42. Quản lý giao tác (tt) ⚫ Giải quyết deadlock ⚫ Vì sử dụng cơ chế khĩa nên các giao tác sẽ phải tranh giành tài nguyên ⚫ Tình huống “khơng một giao tác nào cĩ thể thực hiện được cơng việc của mình” ⚫ Các giao tác chờ đợi lẫn nhau để được cấp phát tài nguyên ⚫ Thành phần quản lý giao tác sẽ phải can thiệp vào ⚫ Rollback ⚫ Abort Chương 1 : Nhập mơn Hệ Quản Trị CSDL 42
  43. Xử lý truy vấn ⚫ Biểu diễn câu truy vấn ở dạng ngơn ngữ cấp cao (SQL) và thực hiện câu truy vấn cĩ hiệu quả ⚫ Query compiler – biên dịch ⚫ Query parser ⚫ Xây dựng cấu trúc hình cây từ câu truy vấn ⚫ Query preprocessor ⚫ Kiểm tra ngữ nghĩa của câu truy vấn ⚫ Chuyển đổi cấu trúc cây sang ngơn ngữ đại số quan hệ ⚫ Query optimizer ⚫ Sắp xếp các phép tốn nhằm mục đích tối ưu hĩa câu truy vấn Chương 1 : Nhập mơn Hệ Quản Trị CSDL 43
  44. Quản lý lưu trữ ⚫ Thành phần cĩ nhiệm vụ điểu khiển việc đọc/ghi dữ liệu qua lại giữa bộ nhớ và thiết bị lưu trữ ⚫ Làm việc với khác khái niệm ⚫ Tập tin dữ liệu ⚫ Từ điển dữ liệu ⚫ Lưu trữ các metadata về cấu trúc của CSDL, đặc biệt là lược đồ của CSDL ⚫ Chỉ mục Chương 1 : Nhập mơn Hệ Quản Trị CSDL 44
  45. Mơ hình mạng ⚫ Dữ liệu ~ tập các record ⚫ Mối quan hệ giữa các dữ liệu ~ các link ⚫ Các record được tổ chức thành tập các đồ thị tùy ý TênKH MãKH ĐịaChỉ ThànhPhố MãTK SốDư TênCN ThànhPhố TổngTiền Johnson 192-83-7465 Alma Palo Alto A-101 500 Perryridge Horseneck 1700000 Smith 019-28-3746 North Rye A-215 700 Downtown Brooklyn 9000000 A-102 400 Hayes 677-89-9011 Main Harison Round Hill Horseneck 8000000 A-305 350 Tuner 182-73-6091 Putnam Stamford Mianus Woodside 1000000 A-201 900 Jones 321-12-3123 Main Harison A-217 750 Redwood Princeton 2000000 Lindsay 336-66-9999 Park Pittsfield A-222 700 Brighton Brooklyn 7000000 Khách hàng Tài khoản Chi nhánh Chương 1 : Nhập mơn Hệ Quản Trị CSDL 45
  46. Mơ hình phân cấp ⚫ Dữ liệu và mối quan hệ được biểu diễn bằng các record và link ⚫ Các record được tổ chức dưới dạng tập các cây Johnson 192-83-7465 Smith 019-28-3746 Hayes 677-89-9011 A-101 500 A-201 900 Tuner 182-73-6091 A-215 700 A-201 900 John 321-12-3123 A-102 400 A-305 350 A-217 750 Chương 1 : Nhập mơn Hệ Quản Trị CSDL 46
  47. Mơ hình quan hệ ⚫ Sử dụng bảng 2 chiều (quan hệ) để biểu diễn cho dữ liệu và mối quan hệ TênKH MãKH ĐịaChỉ ThànhPhố MãTK MãTK SốDư Johnson 192-83-7465 Alma Palo Alto A-101 A-101 500 Smith 019-28-3746 North Rye A-215 A-215 700 Hayes 677-89-9011 Main Harison A-102 A-102 400 Tuner 182-73-6091 Putnam Stamford A-305 A-305 350 Jones 321-12-3123 Main Harison A-217 A-201 900 Lindsay 336-66-9999 Park Pittsfield A-222 A-217 750 Johnson 192-83-7465 Alma Palo Alto A-201 A-222 700 Khách hàng Tài khoản Chương 1 : Nhập mơn Hệ Quản Trị CSDL 47
  48. Mơ hình hướng đối tượng ⚫ Dữ liệu và mối quan hệ được biểu diễn bằng khái niệm đối tượng ⚫ Cấu trúc 1 đối tượng ⚫ Biến (variables) ⚫ Thơng điệp (messages) ⚫ Phương thức (methods) ⚫ Các khái niệm của CSDL hướng đối tượng ⚫ Lớp (class) ⚫ Định danh đối tượng (Object Identity) ⚫ Đĩng gĩi (Encapsulation) ⚫ Kế thừa (Inheritance) ⚫ Ngơn ngữ định nghĩa đối tượng - ODL ⚫ Ngơn ngữ thao tác đối tượng - OML Chương 1 : Nhập mơn Hệ Quản Trị CSDL 48
  49. Mơ hình hướng đối tượng (tt) class Customer: public Person { class Person: public d_Object { public: public: d_Date member_from; d_String name; d_Long customer_id; d_String address; d_Ref home_branch; }; }; class Account: public d_Object { private: d_Long balance; public: d_Long number; d_Set > owners; int find_balance(); int update_balance(int delta); }; Chương 1 : Nhập mơn Hệ Quản Trị CSDL 49
  50. XML ⚫ Dữ liệu và mối quan hệ được biểu diễn thơng qua ngơn ngữ đánh dấu (markup language) ⚫ Cấu trúc của dữ liệu XML ⚫ Thẻ ⚫ Element ⚫ 1 cặp thẻ mở/đĩng ⚫ Dữ liệu dưới dạng text ⚫ Ngơn ngữ truy vấn – Xquery, Xpath ⚫ Ngơn ngữ định nghĩa – DTD, XML Schema (XSD) Chương 1 : Nhập mơn Hệ Quản Trị CSDL 50
  51. XML (tt) Downtown 500 Joe Monroe Madison Mary Erin Newark Chương 1 : Nhập mơn Hệ Quản Trị CSDL 51
  52. Ngơn ngữ CSDL ⚫ Ngơn ngữ định nghĩa dữ liệu (DDL – Data Definition Language) ⚫ Xác định ra lược đồ quan niệm ⚫ Ngơn ngữ lưu trữ dữ liệu (SDL – Storage Definition Language) ⚫ Ngơn ngữ định nghĩa lược đồ trong ⚫ Ngơn ngữ định nghĩa khung nhìn (VDL – View Definition Language) ⚫ Ngơn ngữ định nghĩa lược đồ ngồi Chương 1 : Nhập mơn Hệ Quản Trị CSDL 52
  53. Một ví dụ về CSDL (tt) ⚫ Quản lý đề án của một cơng ty ⚫ Định nghĩa CSDL ⚫ Cấu trúc bảng, bao gồm các thành phần dữ liệu và kiểu dữ liệu tương ứng ⚫ Xây dựng CSDL ⚫ Đưa dữ liệu vào các bảng ⚫ Xử lý CSDL ⚫ Thực hiện các truy vấn: “Cho biết những nhân viên thuộc phịng 5” ⚫ Thực hiện các phép cập nhật: “Chuyển nhân viên Nguyễn Thanh Tùng sang phịng số 1” Chương 1 : Nhập mơn Hệ Quản Trị CSDL 53
  54. Quản trị viên ⚫ Cĩ trách nhiệm quản lý hệ CSDL ⚫ Cấp quyền truy cập CSDL ⚫ Điều phối và giám sát việc sử dụng CSDL Chương 1 : Nhập mơn Hệ Quản Trị CSDL 54
  55. Thiết kế viên ⚫ Chịu trách nhiệm về ⚫ Lựa chọn cấu trúc phù hợp để lưu trữ dữ liệu ⚫ Quyết định những dữ liệu nào cần được lưu trữ ⚫ Liên hệ với người dùng để nắm bắt được những yêu cầu và đưa ra một thiết kế CSDL thỏa yêu cầu này ⚫ Cĩ thể là 1 nhĩm các DBA quản lý các CSDL sau khi việc thiết kế hồn tất Chương 1 : Nhập mơn Hệ Quản Trị CSDL 55
  56. Người dùng cuối ⚫ Người ít sử dụng ⚫ Ít khi truy cập CSDL, nhưng cần những thơng tin khác nhau trong mỗi lần truy cập và dùng những câu truy vấn phức tạp ⚫ Người quản lý ⚫ Người sử dụng thường xuyên ⚫ Thường xuyên truy vấn và cập nhật CSDL nhờ vào một số các chức năng đã được xây dựng sẳn ⚫ Nhân viên ⚫ Người sử dụng đặc biệt ⚫ Thơng thạo về HQT CSDL, tự xây dựng những truy vấn phức tạp cho cơng việc ⚫ Kỹ sư, nhà khoa học, người phân tích, Chương 1 : Nhập mơn Hệ Quản Trị CSDL 56
  57. Mơ hình dữ liệu ⚫ Mơ hình dữ liệu (Data Model) bao gồm ⚫ Các khái niệm biểu diễn dữ liệu ⚫ Các phép tốn xử lý dữ liệu Chương 1 : Nhập mơn Hệ Quản Trị CSDL 57
  58. Mơ hình dữ liệu (tt) ⚫ Mơ hình mức cao ⚫ Cung cấp các khái niệm gần gũi với người dùng ⚫ Mơ hình phải tự nhiên và giàu ngữ nghĩa ⚫ VD: mơ hình thực thể kết hợp (ER), mơ hình đối tượng ⚫ Mơ hình cài đặt ⚫ Đưa ra các khái niệm người dùng cĩ thể hiểu được nhưng khơng quá xa với cách dữ liệu được tổ chức thật sự trên máy tính ⚫ VD: mơ hình quan hệ, mơ hình mạng, mơ hình phân cấp ⚫ Mơ hình mức thấp (mơ hình vật lý) ⚫ Đưa ra các khái niệm mơ tả chi tiết về cách thức dữ liệu được lưu trữ trong máy tính Chương 1 : Nhập mơn Hệ Quản Trị CSDL 58
  59. Ví dụ mơ hình ER Diem MaHP Hocky (0,n) (1,1) Nam Gvien hoc HPhan mo mhoctruoc MaSV (1,n) MaMH (0,n) Ten TenMH Lop SVien Khoa MHoc Nganh Tinchi (0,n) dieukien (0,n) mhocsau Chương 1 : Nhập mơn Hệ Quản Trị CSDL 59
  60. Ví dụ mơ hình đố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 Khoa +MHoc truoc SoTinChi 0 * CapNhatSTC() 0 * Dieu kien +MHoc sau Chương 1 : Nhập mơn Hệ Quản Trị CSDL 60
  61. Ví dụ mơ hình quan hệ SVien Hoc HPhan MaSV MaSV MaHP Ten MaHP SLuong Lop DiemLT MaMH Nganh DiemTH MHoc DKien MaMH MaMH TenMH MaMHTruoc Khoa TinChi Chương 1 : Nhập mơn Hệ Quản Trị CSDL 61
  62. Ví dụ mơ hình mạng SVien MHoc MHOC_SAU MHOC_MO MHOC_TRUOC SVIEN_DIEM HPhan DKien KQUA_HPHAN KQua Chương 1 : Nhập mơn Hệ Quản Trị CSDL 62
  63. Ví dụ mơ hình phân cấp KQua Mức 1: DiemTH DiemLT HPhan SVien Mức 2: TenHP SLuong TenSV Lop Nganh MHoc Mức 3: TenMH Khoa TinChi Chương 1 : Nhập mơn Hệ Quản Trị CSDL 63
  64. Phân loại: Hệ tập trung: Là các hệ mà trong đó phần CSDL được lưu trữ tại 1 nơi, một vị trí nhất định a. Personal Database: Là Hệ CSDL nhỏ bao gồm 4 thành phần chính, trong hệ nầy thì người viết chương trình cũng là người sử dụng cuối đồng thời là người quản lý. User Máy Tính HQTCSDL    CSDL
  65. Phân loại: b. Central Database: Là một hệ đa người dùng từ thiết bị đầu cuối tại đó có màn hình và bàn phím để trao đổi thông tin. Mọi xử lý, tính toán được thực hiện tại trung tâm với 1 máy tính mạnh có thể xử lý nhiều yêu cầu User Máy Tính HQTCSDL   CSDL   
  66. Phân loại: c. Client/ Server Database: CSDL được tạo lập, lưu trữ tại server, nhưng việc tính toán lại diễn ra ở các máy client. Máy server không cần quá mạnh. Hệ CSDL nầy có vẻ phân tán nhưng thực ra vẫn là hệ tập trung vì dữ liệu đặt toàn bộ tại một chỗ. Client Máy Tính Server          CSDL
  67. Phân loại: Hệ phân tán: Là những hệ CSDL được chia nhỏ thành nhiều CSDL địa phương, trải ra trong 1 mạng máy tính      Mạng truyền thông    
  68. SUMMARY Hệ CSDL Hệ Quản trị CSDL. Các chức năng của hệ quản trị CSDL. Mơ hình dữ liệu. Cấu trúc hệ thống tổng thể của Hệ quản trị CSDL. Các thành phần của mơi trường Hệ quản trị CSDL. Chương 1 : Nhập mơn Hệ Quản Trị CSDL 68