Bài giảng Hệ quản trị dữ liệu - Chương I: Kiến trúc tổng quát của một hệ quản trị cơ sở dữ liệu

pdf 31 trang hapham 1860
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Hệ quản trị dữ liệu - Chương I: Kiến trúc tổng quát của một 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:

  • pdfbai_giang_he_quan_tri_du_lieu_chuong_i_kien_truc_tong_quat_c.pdf

Nội dung text: Bài giảng Hệ quản trị dữ liệu - Chương I: Kiến trúc tổng quát của một hệ quản trị cơ sở dữ liệu

  1. Chương I. Kiến trúc tổng quát của một hệ quản trị cơ sở dữ liệu 1
  2. Nội dung  Quá trình phát triển của các hệ xử lý dữ liệu bằng máy tính.  Định nghĩa hệ quản trị cơ sở dữ liệu.  Các đặc trưng của dữ liệu trên CSDL.  Ba mức trừu tượng của dữ liệu.  Các loại hệ quản trị CSDL. 2
  3. Quá trình phát triển của các hệ xử lý dữ liệu bằng máy tính.  Hệ thống tập tin cổ điển (file systems)  Cơ sở dữ liệu (Database)  Các đối tượng sử dụng CSDL 3
  4. Hệ thống tập tin cổ điển (file systems)  CSDL được lưu trữ dưới dạng tập hợp các files  Mỗi file là một tập các records, thường có cùng một loại  Một record là một chuỗi các fields  Ví dụ: Xét hệ thống tập tin quản lý nhân sự của một đơn vị:  Phòng Tổ chức hành chánh: Lý lịch chi tiết của CBCNV  Phòng kế tóan: Phòng, họ tên, lương, phụ cấp, ngày công ,  Quản đốc phân xưởng: Họ tên, ngày công, ngày nghỉ, 4
  5. Hệ thống tập tin cổ điển (file systems)  Ưu điểm:  Gọn nhẹ, phù hợp thực tiễn. Ít tốn thời gian, chi phí thấp  Khả năng đáp ứng khai thác nhanh chóng và kịp thời  Nhược điểm:  Thông tin lưu nhiều nơi, dư thừa, không nhất quán  Lãng phí thời gian cập nhật dữ liệu và lưu trữ  Phối hợp tổ chức và khai thác là khó khăn  Thiếu sự chia sẽ thông tin giữa các đơn vị và bộ phận.  Khó khi nâng cấp ứng dụng.  Không có người quản trị dữ liệu, mọi người có quyền sử dụng thêm, xóa, sửa không an tòan, không bảo mật thông tin 5
  6. Cơ sở dữ liệu (Database)  Là HTTT có cấu trúc, được lưu trữ trên các thiết bị mang tin từ tính, phục vụ việc khai thác thông tin của nhiều người sử dụng một cách đồng thời với nhiều mục đích khác nhau.  Các vấn đề cần giải quyết  Tính chủ quyền bị vi phạm  Tính nhất quán CSDL  Vấn đề bảo mật  Tính an tòan dữ liệu  Vấn đề tranh chấp dữ liệu  Chia sẽ thông tin cho nhiều người sử dụng một cách đồng thời  Đảm bảo dữ liệu truy xuất đồng thời theo nhiều cách khác nhau  Tính độc lập giữa dữ liệu và chương trình / hệ thống ứng dụng 6
  7. Các đối tượng sử dụng CSDL  Quản trị viên (Database Administrator - DBA)  Thiết kế viên (Database Designer)  Người dùng cuối (End User)  2 cách khai thác CSDL: Trực tiếp: không thông qua chương trình ứng dụng viết trước và truy cập qua khung nhìn hay sql. Gián tiếp: thông qua chương trình ứng dụng viết trước. 7
  8. 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 8
  9. 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ế hoàn tất 9
  10. 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 10 Kỹ sư, nhà khoa học, người phân tích,
  11. Định nghĩa hệ quản trị cơ sở dữ liệu  Là một hệ thống phần mềm cung cấp các công cụ để xây dựng và quản lý CSDL Định nghĩa cấu trúc dữ liệu (DDL). Cung cấp khả năng thao tác trên CSDL (MDL). Hỗ trợ lưu trữ dữ liệu. Điều khiển truy xuất dữ liệu giữa nhiều người dùng. 11
  12. Các đặc trưng của dữ liệu trên CSDL  Giảm thiểu sự trùng lắp thông tin.  Bảo đảm tính nhất quán.  Dữ liệu có thể chia sẽ cho nhiều người dùng một cách đồng thời.  Bảo đảm dữ liệu có thể truy cập theo nhiều cách khác nhau.  Có thể khôi phục khi có sự cố 12
  13. Các đặc trưng của dữ liệu trên CSDL  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  Bảo mật thông tin được đảm bảo chặt chẽ. Mỗi người sử dụng sẽ được cấp một quyền hạn sử dụng những dữ liệu thuộc phạm vi của mình vào những thời điểm nhất định An tòan trước sự cố thông qua các cơ chế sao lưu và phục hồi dữ liệu một cách tự động  Giải quyết tranh chấp dữ liệu thông qua các cơ chế cài đặt 13 sẵn
  14. Ba mức trừu tượng của dữ liệu.  Kiến trúc 3 lược đồ Mức ngoài Người dùng Người dùng Lược đồ ngoài 1 Lược đồ ngoài n Ánh xạ ngoà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 14
  15. Ba mức trừu tượng của dữ liệu.  Mức khung nhìn (mức ngoài) Mô tả 1 phần nào đó của toàn bộ hệ thống  Mức quan niệm 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ý (mức trong) Dữ liệu được lưu trữ như thế nào 15
  16. Ví dụ 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 16 tin của customer
  17. 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 Quản lý Xử lý lưu trữ truy vấn 17
  18. Ngôn ngữ giao tiếp  DBMS cung cấp giao diện lập trình để 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 18
  19. 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 19
  20. Quản lý khôi phục Để 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 đó. 20
  21. 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 toán nhằm mục đích tối ưu hóa câu truy vấn 21
  22. 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 cá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 22
  23. Các loại hệ quản trị CSDL  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 23  Hypertext
  24. 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 24 Khách hàng Tài khoản Chi nhánh
  25. 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 25 A-217 750
  26. 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 26
  27. Mô hình hướng đố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) 27
  28. 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) 28
  29. Theo kiến trúc  Hệ thống tập trung: Các hệ CSDL tập trung chạy trên máy đơn và không trao đổi với các máy khác. Các hệ thống như vậy trải từ các hệ CSDL một người sử dụng chạy trên các máy cá nhân ( PC ) đến các hệ CSDL hiệu năng cao chạy trên các hệ mainframe. 29
  30. Theo kiến trúc (tt)  Hệ thống Client-Server: Các hệ thống server được phân thành 2 loại: server giao dịch (transaction server) và server dữ liệu (data server). 30
  31. Quá trình phát triển các HQT CSDL  Những năm thập niên 60-70 người ta đã xây dựng các HQT CSDL theo 2 hướng: mạng và phân cấp.  Năm 70 các nhà sản xuất đã đưa ra HQT CSDL có tên là CODASYL  Năm 76 IBM đưa ra HQT CSDL đầu tiên theo mô hình quan hệ của CODD mang tên SYSTEM-R và đã tồn tại được khỏang 2-3 năm sau đó.  Năm 80, IBM đưa ra DB2 (hiện nay vẫn còn sử dụng). Các nhà sản xuất khác cũng đưa ra nhiều hệ CSDL khác, nhưng nổi tiếng nhất cho đến nay là 3 phần mềm quản trị CSDL: Oracle, SQL, Informix và sysbase.  Tới năm 90 người ta nghiên cứu các các hệ QT CSDL theo hướng đối tượng. Tuy nhiên các HQTCSDL như thế hiện nay vẫn còn ít phần lớn vẫn đi theo mô hình quan hệ. 31