Bài giảng Hệ quản trị cơ sở dữ liệu hướng đối tượng - Phạm Thị Ngọc Diễm

pdf 246 trang hapham 2250
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 hướng đối tượng - Phạm Thị Ngọc Diễm", để 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_co_so_du_lieu_huong_doi_tuong_pham_thi.pdf

Nội dung text: Bài giảng Hệ quản trị cơ sở dữ liệu hướng đối tượng - Phạm Thị Ngọc Diễm

  1. Giới thiệu HQT CSDL hướng đối tượng Ví dụ Kết luận HQT CSDL hướng đối tượng (OODBMS: Object-Oriented DataBase Management System) Phạm Thị Ngọc Diễm ptndiem@cit.ctu.edu.vn Bộ môn HTTT Khoa CNTT&TT - Đại học Cần Thơ Tháng 12 năm 2012 1 Phạm Thị Ngọc Diễm OODB
  2. Giới thiệu HQT CSDL hướng đối tượng Ví dụ Kết luận Nội dung 1 Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng Ưu nhược điểm của HQT CSDL quan hệ Tiếp cận hướng đối tượng 2 HQT CSDL hướng đối tượng Giới thiệu OODM và OODBMS Ưu và nhược điểm của OODBMS Các chuẩn Mô hình hóa 3 Ví dụ CSDL đào tạo 4 Kết luận 2 Phạm Thị Ngọc Diễm OODB
  3. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Nội dung 1 Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng Ưu nhược điểm của HQT CSDL quan hệ Tiếp cận hướng đối tượng 2 HQT CSDL hướng đối tượng Giới thiệu OODM và OODBMS Ưu và nhược điểm của OODBMS Các chuẩn Mô hình hóa 3 Ví dụ CSDL đào tạo 4 Kết luận 3 Phạm Thị Ngọc Diễm OODB
  4. Sản xuất nhờ máy tính (CAM: Computer-Aided Manufactoring) Công nghệ phần mềm Hệ thống đa phương tiện (Multimedia system) Hệ thống thông tin địa lý (GIS) Tìm kiếm và tích hợp dữ liệu của các Website. Etc. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của các ứng dụng I Những ứng dụng mới Thiết kế nhờ máy tính (CAD: Computer-Aided Design) 4 Phạm Thị Ngọc Diễm OODB
  5. Công nghệ phần mềm Hệ thống đa phương tiện (Multimedia system) Hệ thống thông tin địa lý (GIS) Tìm kiếm và tích hợp dữ liệu của các Website. Etc. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của các ứng dụng I Những ứng dụng mới Thiết kế nhờ máy tính (CAD: Computer-Aided Design) Sản xuất nhờ máy tính (CAM: Computer-Aided Manufactoring) 4 Phạm Thị Ngọc Diễm OODB
  6. Hệ thống đa phương tiện (Multimedia system) Hệ thống thông tin địa lý (GIS) Tìm kiếm và tích hợp dữ liệu của các Website. Etc. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của các ứng dụng I Những ứng dụng mới Thiết kế nhờ máy tính (CAD: Computer-Aided Design) Sản xuất nhờ máy tính (CAM: Computer-Aided Manufactoring) Công nghệ phần mềm 4 Phạm Thị Ngọc Diễm OODB
  7. Hệ thống thông tin địa lý (GIS) Tìm kiếm và tích hợp dữ liệu của các Website. Etc. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của các ứng dụng I Những ứng dụng mới Thiết kế nhờ máy tính (CAD: Computer-Aided Design) Sản xuất nhờ máy tính (CAM: Computer-Aided Manufactoring) Công nghệ phần mềm Hệ thống đa phương tiện (Multimedia system) 4 Phạm Thị Ngọc Diễm OODB
  8. Tìm kiếm và tích hợp dữ liệu của các Website. Etc. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của các ứng dụng I Những ứng dụng mới Thiết kế nhờ máy tính (CAD: Computer-Aided Design) Sản xuất nhờ máy tính (CAM: Computer-Aided Manufactoring) Công nghệ phần mềm Hệ thống đa phương tiện (Multimedia system) Hệ thống thông tin địa lý (GIS) 4 Phạm Thị Ngọc Diễm OODB
  9. Etc. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của các ứng dụng I Những ứng dụng mới Thiết kế nhờ máy tính (CAD: Computer-Aided Design) Sản xuất nhờ máy tính (CAM: Computer-Aided Manufactoring) Công nghệ phần mềm Hệ thống đa phương tiện (Multimedia system) Hệ thống thông tin địa lý (GIS) Tìm kiếm và tích hợp dữ liệu của các Website. 4 Phạm Thị Ngọc Diễm OODB
  10. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của các ứng dụng I Những ứng dụng mới Thiết kế nhờ máy tính (CAD: Computer-Aided Design) Sản xuất nhờ máy tính (CAM: Computer-Aided Manufactoring) Công nghệ phần mềm Hệ thống đa phương tiện (Multimedia system) Hệ thống thông tin địa lý (GIS) Tìm kiếm và tích hợp dữ liệu của các Website. Etc. 4 Phạm Thị Ngọc Diễm OODB
  11. Những kiểu dữ liệu mới, Những giao dịch kéo dài, Việc phát triển của các hệ thống thông tin không thỏa mãn nhu cầu người dùng Etc. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của các ứng dụng II => Những nhu cầu mới Những đối tượng có cấu trúc ngày càng phức tạp, 5 Phạm Thị Ngọc Diễm OODB
  12. Những giao dịch kéo dài, Việc phát triển của các hệ thống thông tin không thỏa mãn nhu cầu người dùng Etc. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của các ứng dụng II => Những nhu cầu mới Những đối tượng có cấu trúc ngày càng phức tạp, Những kiểu dữ liệu mới, 5 Phạm Thị Ngọc Diễm OODB
  13. Việc phát triển của các hệ thống thông tin không thỏa mãn nhu cầu người dùng Etc. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của các ứng dụng II => Những nhu cầu mới Những đối tượng có cấu trúc ngày càng phức tạp, Những kiểu dữ liệu mới, Những giao dịch kéo dài, 5 Phạm Thị Ngọc Diễm OODB
  14. Etc. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của các ứng dụng II => Những nhu cầu mới Những đối tượng có cấu trúc ngày càng phức tạp, Những kiểu dữ liệu mới, Những giao dịch kéo dài, Việc phát triển của các hệ thống thông tin không thỏa mãn nhu cầu người dùng 5 Phạm Thị Ngọc Diễm OODB
  15. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của các ứng dụng II => Những nhu cầu mới Những đối tượng có cấu trúc ngày càng phức tạp, Những kiểu dữ liệu mới, Những giao dịch kéo dài, Việc phát triển của các hệ thống thông tin không thỏa mãn nhu cầu người dùng Etc. 5 Phạm Thị Ngọc Diễm OODB
  16. 1970s: HQT CSDL quan hệ Mô hình đơn giản Toàn vẹn dữ liệu An toàn dữ liệu Tính nguyên tố của các giao dịch Độ tin cậy của dữ liệu Etc. 1986 : Sự xuất hiện HQT CSDL hướng đối tượng 1993 : Sự ra đời của chuẩn ODMG cho HQT CSDL HĐT 1998 : Chuẩn UML cho thiết kế những ứng dụng HĐT 1999 : Chuẩn SQL3 cho HTQ CSDL quan hệ - đối tượng Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của HQT CSDL 1960s: HQT CSDL phân cấp (IMS), HQT CSDL mạng (CODASYL) 6 Phạm Thị Ngọc Diễm OODB
  17. 1986 : Sự xuất hiện HQT CSDL hướng đối tượng 1993 : Sự ra đời của chuẩn ODMG cho HQT CSDL HĐT 1998 : Chuẩn UML cho thiết kế những ứng dụng HĐT 1999 : Chuẩn SQL3 cho HTQ CSDL quan hệ - đối tượng Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của HQT CSDL 1960s: HQT CSDL phân cấp (IMS), HQT CSDL mạng (CODASYL) 1970s: HQT CSDL quan hệ Mô hình đơn giản Toàn vẹn dữ liệu An toàn dữ liệu Tính nguyên tố của các giao dịch Độ tin cậy của dữ liệu Etc. 6 Phạm Thị Ngọc Diễm OODB
  18. 1993 : Sự ra đời của chuẩn ODMG cho HQT CSDL HĐT 1998 : Chuẩn UML cho thiết kế những ứng dụng HĐT 1999 : Chuẩn SQL3 cho HTQ CSDL quan hệ - đối tượng Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của HQT CSDL 1960s: HQT CSDL phân cấp (IMS), HQT CSDL mạng (CODASYL) 1970s: HQT CSDL quan hệ Mô hình đơn giản Toàn vẹn dữ liệu An toàn dữ liệu Tính nguyên tố của các giao dịch Độ tin cậy của dữ liệu Etc. 1986 : Sự xuất hiện HQT CSDL hướng đối tượng 6 Phạm Thị Ngọc Diễm OODB
  19. 1998 : Chuẩn UML cho thiết kế những ứng dụng HĐT 1999 : Chuẩn SQL3 cho HTQ CSDL quan hệ - đối tượng Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của HQT CSDL 1960s: HQT CSDL phân cấp (IMS), HQT CSDL mạng (CODASYL) 1970s: HQT CSDL quan hệ Mô hình đơn giản Toàn vẹn dữ liệu An toàn dữ liệu Tính nguyên tố của các giao dịch Độ tin cậy của dữ liệu Etc. 1986 : Sự xuất hiện HQT CSDL hướng đối tượng 1993 : Sự ra đời của chuẩn ODMG cho HQT CSDL HĐT 6 Phạm Thị Ngọc Diễm OODB
  20. 1999 : Chuẩn SQL3 cho HTQ CSDL quan hệ - đối tượng Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của HQT CSDL 1960s: HQT CSDL phân cấp (IMS), HQT CSDL mạng (CODASYL) 1970s: HQT CSDL quan hệ Mô hình đơn giản Toàn vẹn dữ liệu An toàn dữ liệu Tính nguyên tố của các giao dịch Độ tin cậy của dữ liệu Etc. 1986 : Sự xuất hiện HQT CSDL hướng đối tượng 1993 : Sự ra đời của chuẩn ODMG cho HQT CSDL HĐT 1998 : Chuẩn UML cho thiết kế những ứng dụng HĐT 6 Phạm Thị Ngọc Diễm OODB
  21. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Sự phát triển của HQT CSDL 1960s: HQT CSDL phân cấp (IMS), HQT CSDL mạng (CODASYL) 1970s: HQT CSDL quan hệ Mô hình đơn giản Toàn vẹn dữ liệu An toàn dữ liệu Tính nguyên tố của các giao dịch Độ tin cậy của dữ liệu Etc. 1986 : Sự xuất hiện HQT CSDL hướng đối tượng 1993 : Sự ra đời của chuẩn ODMG cho HQT CSDL HĐT 1998 : Chuẩn UML cho thiết kế những ứng dụng HĐT 1999 : Chuẩn SQL3 cho HTQ CSDL quan hệ - đối tượng 6 Phạm Thị Ngọc Diễm OODB
  22. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Nội dung 1 Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng Ưu nhược điểm của HQT CSDL quan hệ Tiếp cận hướng đối tượng 2 HQT CSDL hướng đối tượng Giới thiệu OODM và OODBMS Ưu và nhược điểm của OODBMS Các chuẩn Mô hình hóa 3 Ví dụ CSDL đào tạo 4 Kết luận 7 Phạm Thị Ngọc Diễm OODB
  23. Mô hình dựa trên cơ sở lý thuyết vững chắc, nó cho phép định nghĩa các phương pháp thiết kế các sơ đồ (schema)(lý thuyết chuẩn hóa) và ngôn ngữ SQL (một ngôn ngữ khai báo đã trở thành ngôn ngữ chuẩn), Phù hợp với những ứng dụng quản lý cổ điển, Etc. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Ưu điểm của HQT CSDL quan hệ Mô hình dữ liệu đơn giản và dễ hiểu đối với người sử dụng, 8 Phạm Thị Ngọc Diễm OODB
  24. Phù hợp với những ứng dụng quản lý cổ điển, Etc. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Ưu điểm của HQT CSDL quan hệ Mô hình dữ liệu đơn giản và dễ hiểu đối với người sử dụng, Mô hình dựa trên cơ sở lý thuyết vững chắc, nó cho phép định nghĩa các phương pháp thiết kế các sơ đồ (schema)(lý thuyết chuẩn hóa) và ngôn ngữ SQL (một ngôn ngữ khai báo đã trở thành ngôn ngữ chuẩn), 8 Phạm Thị Ngọc Diễm OODB
  25. Etc. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Ưu điểm của HQT CSDL quan hệ Mô hình dữ liệu đơn giản và dễ hiểu đối với người sử dụng, Mô hình dựa trên cơ sở lý thuyết vững chắc, nó cho phép định nghĩa các phương pháp thiết kế các sơ đồ (schema)(lý thuyết chuẩn hóa) và ngôn ngữ SQL (một ngôn ngữ khai báo đã trở thành ngôn ngữ chuẩn), Phù hợp với những ứng dụng quản lý cổ điển, 8 Phạm Thị Ngọc Diễm OODB
  26. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Ưu điểm của HQT CSDL quan hệ Mô hình dữ liệu đơn giản và dễ hiểu đối với người sử dụng, Mô hình dựa trên cơ sở lý thuyết vững chắc, nó cho phép định nghĩa các phương pháp thiết kế các sơ đồ (schema)(lý thuyết chuẩn hóa) và ngôn ngữ SQL (một ngôn ngữ khai báo đã trở thành ngôn ngữ chuẩn), Phù hợp với những ứng dụng quản lý cổ điển, Etc. 8 Phạm Thị Ngọc Diễm OODB
  27. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Nhược điểm của HQT CSDL quan hệI Biểu diễn các thực thể của thế giới thực không phong phú Dữ liệu và xử lý tách rời nhau Quá tải về ngữ nghĩa: quan hệ (relation) vừa có thể được tạo ra từ thực thể (entity) , vừa có thể được tạo ra từ liên kết (relationship) trong mô hình thực thể- liên kết (ERD: Entity-Relationshipc Diagram). Ít hỗ trợ cho các ràng buộc toàn vẹn và ràng buộc của xí nghiệp: Các trình ứng dụng phải tự bảo đảm lấy, nhờ vào chuẩn cho SQL. 9 Phạm Thị Ngọc Diễm OODB
  28. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Nhược điểm của HQT CSDL quan hệ II Cấu trúc dữ liệu đồng nhất: theo chiều dọc và chiều ngang: Các bộ có các thuộc tính giống nhau Các giá trị trong cùng thuộc tính phải cùng miền giá trị Giao tại một dòng và một cột phải là một trị nguyên tố (không chia nhỏ ra được nữ) Nhiều HQT CSDL cho phép lưu trữ và hiển thị BLOB (Binary Large Object: chứa thông tin nhị phân, biểu diễn ảnh, phim, một đối tượng bất kỳ không cấu trúc) nhưng không cho sử dụng hoặc hiển thị một phần của nó. BLOB không có tính đệ qui và không biểu diễn được khía cạnh hành xử (behaviour aspect) của đối tượng. => quá hạn chế đối với các đối tượng trong thế giới thực, vốn có cấu trúc phức. 10 Phạm Thị Ngọc Diễm OODB
  29. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Nhược điểm của HQT CSDL quan hệ III Các thao tác (operation) bị hạn chế: Chỉ có các thao tác trên tập hợp và trên các bộ Không cho phép thêm mới phép toán Khó kiểm soát các câu hỏi đệ qui: Không thể chỉ dùng SQL để thực hiện các câu hỏi đệ qui Chính là nhờ ngôn ngữ lập trình trong trình ứng dụng hỗ trợ câu hỏi đệ qui Không tương ứng giữa ngôn ngữ SQL và ngôn ngữ lập trình: SQL: ngôn ngữ khai báo, sử dụng cùng lúc nhiều dòng dữ liệu Ngôn ngữ lập trình: ngôn ngữ thủ tục, chỉ có thể sử dụng 1 dòng dữ liệu/ thời điểm Hai loại ngôn ngữ này có cách biểu diễn dữ liệu khác nhau => trình ứng dụng phải chuyển đổi qua lại 2 cách biểu diễn này => không hiệu quả. 11 Phạm Thị Ngọc Diễm OODB
  30. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Nhược điểm của HQT CSDL quan hệIV Các vấn đề khác về tính cạnh tranh, sự thay đổi các sơ đồ và truy cập nghèo nàn trong RDBMS a) Kiểm soát cạnh tranh không còn hợp thời với các giao dịch kéo dài trên các đối tượng phức hợp. b) Khó thay đổi các sơ đồ :người quản trị CSDL phải can thiệp vào để thay đổi cấu trúc CSDL, và trình ứng dụng phải đổi để thích nghi với các cấu trúc mới => chậm, làm cản trở công nghệ mới => hầu hết các HTTT xí nghiệp đành tự trói mình với cấu trúc CSDL đã có 12 Phạm Thị Ngọc Diễm OODB
  31. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Nhược điểm của HQT CSDL quan hệV c) Truy cập nghèo nàn: HQT CSDL quan hệ dùng các truy cập kết hợp (associative access: dựa trên sự kết hợp các tân từ để chọn) mà ít dùng các truy cập thông thương (navigational access: dựa trên sự chuyển động giữa các bộ) => Không sử dụng con trỏ (pointer).) Chú ý Các mục a) và b) xảy ra không chỉ trên các HQT CSDL quan hệ. 13 Phạm Thị Ngọc Diễm OODB
  32. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Nội dung 1 Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng Ưu nhược điểm của HQT CSDL quan hệ Tiếp cận hướng đối tượng 2 HQT CSDL hướng đối tượng Giới thiệu OODM và OODBMS Ưu và nhược điểm của OODBMS Các chuẩn Mô hình hóa 3 Ví dụ CSDL đào tạo 4 Kết luận 14 Phạm Thị Ngọc Diễm OODB
  33. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Tiếp cận hướng đối tượngI Đề nghị một tập các phương pháp và các công cụ cho phép thiết kế và thực hiện các phần mềm có cấu trúc và có thể được sử dụng lại bởi sự hợp thành của các thành phần độc lập nhau. Mục tiêu: Tăng hiệu suất làm việc của các lập trình viên bằng cách cho phép tạo ra các phần mềm có cấu trúc, có thể mở rộng, có thể tái sử dụng và bảo trì dễ dàng. Các khái niệm chính: đối tượng, đóng gói, kế thừa, etc. Ngôn ngữ lập trình HĐT: C++, Java, etc. => Các CSDL HĐT ra đời đáp ứng những nhu cầu mới và phát sinh từ sự kết hợp của hai lĩnh vực: CSDL và ngôn ngữ lập trình HĐT. 15 Phạm Thị Ngọc Diễm OODB
  34. Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng HQT CSDL hướng đối tượng Ưu nhược điểm của HQT CSDL quan hệ Ví dụ Tiếp cận hướng đối tượng Kết luận Tiếp cận hướng đối tượng II HQT CSDL HĐT = CSDL + Ngôn ngữ lập trình HĐT HQT CSDL NN lập trình HĐT Biểu diễn thế giới thực Phát triển Toàn vẹn dữ liệu Cấu trúc phức tạp Quản lý đĩa Định danh đối tượng Chia sẻ dữ liệu Đóng gói Độ tin cậy của dữ liệu Lớp An toàn dữ liệu Kế thừa Ngôn ngữ hỏi Định nghĩa lại Độc lập logic/vật lý Thư viện lớp 16 Phạm Thị Ngọc Diễm OODB
  35. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Nội dung 1 Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng Ưu nhược điểm của HQT CSDL quan hệ Tiếp cận hướng đối tượng 2 HQT CSDL hướng đối tượng Giới thiệu OODM và OODBMS Ưu và nhược điểm của OODBMS Các chuẩn Mô hình hóa 3 Ví dụ CSDL đào tạo 4 Kết luận 17 Phạm Thị Ngọc Diễm OODB
  36. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Định nghĩaI Mô hình dữ liệu HĐT Mô hình dữ liệu HĐT (OODM: Object-Oriented Data Model) là một mô hình luận lý của dữ liệu để biểu diễn ngữ nghĩa của các dữ liệu dùng trong một ngôn ngữ lập trình hướng đối tượng. CSDL HĐT CSDL HĐT(OODB : Object-Oriented Database) là một CSDL trong đó các thành phần dữ liệu là các đối tượng bền vững và chia sẻ được, định nghĩa bởi một OODM. 18 Phạm Thị Ngọc Diễm OODB
  37. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Định nghĩa II HQT CSDL HĐT HQT CSDL HĐT (OODBMS: Object-Oriented DataBase Management System) là một hệ thống hỗ trợ và cung cấp các công cụ cho việc thiết kế và môi trường thực thi của một OODB. - Không có mô hình dữ liệu hướng đối tượng nào tương đương với mô hình dữ liệu nền của hệ CSDL quan hệ. - Mỗi hệ thống cung cấp định nghĩa riêng về OODBMS. 19 Phạm Thị Ngọc Diễm OODB
  38. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Ví dụ Hệ CSDL HĐT OODBMS Nhà sản xuất Gemstone Gemstone System Inc. Objectivity/DB Objectivity Inc. Object Store Progress Software Corporation FastObjects by Poet Poet Software Corporation Jasmine Object Database Computer Associates/ Fujitshu Limited Versant Versant Corporation Etc. 20 Phạm Thị Ngọc Diễm OODB
  39. Dữ liệu và các xử lý không còn tách biệt nhau, các phương thức (method) là một thành phần khai báo của các lớp đối tượng; Tính kế thừa; Các đối tượng đều có một định danh để phân biệt nó với bất kỳ đối tượng nào khác, ngay cả khi chúng có cùng giá trị; Tương thích giữa các ngôn ngữ lập trình và ngôn ngữ thao tác dữ liệu (DML). Tập các kiểu dữ liệu phải mở rộng được; Gắn kết động (dynamic binding). Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các đặc trưng của Hệ CSDL HĐT I Các hệ CSDL HĐT được đặc trưng bởi các điểm chính: Biểu diễn các cấu trúc dữ liệu phức tạp; 21 Phạm Thị Ngọc Diễm OODB
  40. Tính kế thừa; Các đối tượng đều có một định danh để phân biệt nó với bất kỳ đối tượng nào khác, ngay cả khi chúng có cùng giá trị; Tương thích giữa các ngôn ngữ lập trình và ngôn ngữ thao tác dữ liệu (DML). Tập các kiểu dữ liệu phải mở rộng được; Gắn kết động (dynamic binding). Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các đặc trưng của Hệ CSDL HĐT I Các hệ CSDL HĐT được đặc trưng bởi các điểm chính: Biểu diễn các cấu trúc dữ liệu phức tạp; Dữ liệu và các xử lý không còn tách biệt nhau, các phương thức (method) là một thành phần khai báo của các lớp đối tượng; 21 Phạm Thị Ngọc Diễm OODB
  41. Các đối tượng đều có một định danh để phân biệt nó với bất kỳ đối tượng nào khác, ngay cả khi chúng có cùng giá trị; Tương thích giữa các ngôn ngữ lập trình và ngôn ngữ thao tác dữ liệu (DML). Tập các kiểu dữ liệu phải mở rộng được; Gắn kết động (dynamic binding). Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các đặc trưng của Hệ CSDL HĐT I Các hệ CSDL HĐT được đặc trưng bởi các điểm chính: Biểu diễn các cấu trúc dữ liệu phức tạp; Dữ liệu và các xử lý không còn tách biệt nhau, các phương thức (method) là một thành phần khai báo của các lớp đối tượng; Tính kế thừa; 21 Phạm Thị Ngọc Diễm OODB
  42. Tương thích giữa các ngôn ngữ lập trình và ngôn ngữ thao tác dữ liệu (DML). Tập các kiểu dữ liệu phải mở rộng được; Gắn kết động (dynamic binding). Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các đặc trưng của Hệ CSDL HĐT I Các hệ CSDL HĐT được đặc trưng bởi các điểm chính: Biểu diễn các cấu trúc dữ liệu phức tạp; Dữ liệu và các xử lý không còn tách biệt nhau, các phương thức (method) là một thành phần khai báo của các lớp đối tượng; Tính kế thừa; Các đối tượng đều có một định danh để phân biệt nó với bất kỳ đối tượng nào khác, ngay cả khi chúng có cùng giá trị; 21 Phạm Thị Ngọc Diễm OODB
  43. Tập các kiểu dữ liệu phải mở rộng được; Gắn kết động (dynamic binding). Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các đặc trưng của Hệ CSDL HĐT I Các hệ CSDL HĐT được đặc trưng bởi các điểm chính: Biểu diễn các cấu trúc dữ liệu phức tạp; Dữ liệu và các xử lý không còn tách biệt nhau, các phương thức (method) là một thành phần khai báo của các lớp đối tượng; Tính kế thừa; Các đối tượng đều có một định danh để phân biệt nó với bất kỳ đối tượng nào khác, ngay cả khi chúng có cùng giá trị; Tương thích giữa các ngôn ngữ lập trình và ngôn ngữ thao tác dữ liệu (DML). 21 Phạm Thị Ngọc Diễm OODB
  44. Gắn kết động (dynamic binding). Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các đặc trưng của Hệ CSDL HĐT I Các hệ CSDL HĐT được đặc trưng bởi các điểm chính: Biểu diễn các cấu trúc dữ liệu phức tạp; Dữ liệu và các xử lý không còn tách biệt nhau, các phương thức (method) là một thành phần khai báo của các lớp đối tượng; Tính kế thừa; Các đối tượng đều có một định danh để phân biệt nó với bất kỳ đối tượng nào khác, ngay cả khi chúng có cùng giá trị; Tương thích giữa các ngôn ngữ lập trình và ngôn ngữ thao tác dữ liệu (DML). Tập các kiểu dữ liệu phải mở rộng được; 21 Phạm Thị Ngọc Diễm OODB
  45. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các đặc trưng của Hệ CSDL HĐT I Các hệ CSDL HĐT được đặc trưng bởi các điểm chính: Biểu diễn các cấu trúc dữ liệu phức tạp; Dữ liệu và các xử lý không còn tách biệt nhau, các phương thức (method) là một thành phần khai báo của các lớp đối tượng; Tính kế thừa; Các đối tượng đều có một định danh để phân biệt nó với bất kỳ đối tượng nào khác, ngay cả khi chúng có cùng giá trị; Tương thích giữa các ngôn ngữ lập trình và ngôn ngữ thao tác dữ liệu (DML). Tập các kiểu dữ liệu phải mở rộng được; Gắn kết động (dynamic binding). 21 Phạm Thị Ngọc Diễm OODB
  46. Kiểm soát được CSDL rất lớn; Hỗ trợ tính cạnh tranh; Phục hồi CSDL; Truy vấn dữ liệu đơn giản, etc. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các đặc trưng của Hệ CSDL HĐT II Ngoài ra các hệ CSDL HĐT cũng phải thỏa mãn các yêu cầu chung cho tất cả các HQT CSDL: Tính bền vững dữ liệu; 22 Phạm Thị Ngọc Diễm OODB
  47. Hỗ trợ tính cạnh tranh; Phục hồi CSDL; Truy vấn dữ liệu đơn giản, etc. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các đặc trưng của Hệ CSDL HĐT II Ngoài ra các hệ CSDL HĐT cũng phải thỏa mãn các yêu cầu chung cho tất cả các HQT CSDL: Tính bền vững dữ liệu; Kiểm soát được CSDL rất lớn; 22 Phạm Thị Ngọc Diễm OODB
  48. Phục hồi CSDL; Truy vấn dữ liệu đơn giản, etc. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các đặc trưng của Hệ CSDL HĐT II Ngoài ra các hệ CSDL HĐT cũng phải thỏa mãn các yêu cầu chung cho tất cả các HQT CSDL: Tính bền vững dữ liệu; Kiểm soát được CSDL rất lớn; Hỗ trợ tính cạnh tranh; 22 Phạm Thị Ngọc Diễm OODB
  49. Truy vấn dữ liệu đơn giản, etc. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các đặc trưng của Hệ CSDL HĐT II Ngoài ra các hệ CSDL HĐT cũng phải thỏa mãn các yêu cầu chung cho tất cả các HQT CSDL: Tính bền vững dữ liệu; Kiểm soát được CSDL rất lớn; Hỗ trợ tính cạnh tranh; Phục hồi CSDL; 22 Phạm Thị Ngọc Diễm OODB
  50. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các đặc trưng của Hệ CSDL HĐT II Ngoài ra các hệ CSDL HĐT cũng phải thỏa mãn các yêu cầu chung cho tất cả các HQT CSDL: Tính bền vững dữ liệu; Kiểm soát được CSDL rất lớn; Hỗ trợ tính cạnh tranh; Phục hồi CSDL; Truy vấn dữ liệu đơn giản, etc. 22 Phạm Thị Ngọc Diễm OODB
  51. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Nội dung 1 Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng Ưu nhược điểm của HQT CSDL quan hệ Tiếp cận hướng đối tượng 2 HQT CSDL hướng đối tượng Giới thiệu OODM và OODBMS Ưu và nhược điểm của OODBMS Các chuẩn Mô hình hóa 3 Ví dụ CSDL đào tạo 4 Kết luận 23 Phạm Thị Ngọc Diễm OODB
  52. Có khả năng mở rộng Tương thích với ngôn ngữ lập trình HĐT Hỗ trợ các giao dịch kéo dài Có khả năng áp dụng các trình ứng dụng chuyên sâu về CSDL Cải tiến hiệu suất Sử dụng tham chiếu Ngôn ngữ hỏi có tính biểu hiện cao hơn Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Ưu điểm của OODBMS Khả năng mô hình hoá phong phú với nhiều kiểu dữ liệu có cấu trúc phức tạp và các kiểu dữ liệu mới (hình ảnh, âm thanh, etc.) 24 Phạm Thị Ngọc Diễm OODB
  53. Tương thích với ngôn ngữ lập trình HĐT Hỗ trợ các giao dịch kéo dài Có khả năng áp dụng các trình ứng dụng chuyên sâu về CSDL Cải tiến hiệu suất Sử dụng tham chiếu Ngôn ngữ hỏi có tính biểu hiện cao hơn Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Ưu điểm của OODBMS Khả năng mô hình hoá phong phú với nhiều kiểu dữ liệu có cấu trúc phức tạp và các kiểu dữ liệu mới (hình ảnh, âm thanh, etc.) Có khả năng mở rộng 24 Phạm Thị Ngọc Diễm OODB
  54. Hỗ trợ các giao dịch kéo dài Có khả năng áp dụng các trình ứng dụng chuyên sâu về CSDL Cải tiến hiệu suất Sử dụng tham chiếu Ngôn ngữ hỏi có tính biểu hiện cao hơn Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Ưu điểm của OODBMS Khả năng mô hình hoá phong phú với nhiều kiểu dữ liệu có cấu trúc phức tạp và các kiểu dữ liệu mới (hình ảnh, âm thanh, etc.) Có khả năng mở rộng Tương thích với ngôn ngữ lập trình HĐT 24 Phạm Thị Ngọc Diễm OODB
  55. Có khả năng áp dụng các trình ứng dụng chuyên sâu về CSDL Cải tiến hiệu suất Sử dụng tham chiếu Ngôn ngữ hỏi có tính biểu hiện cao hơn Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Ưu điểm của OODBMS Khả năng mô hình hoá phong phú với nhiều kiểu dữ liệu có cấu trúc phức tạp và các kiểu dữ liệu mới (hình ảnh, âm thanh, etc.) Có khả năng mở rộng Tương thích với ngôn ngữ lập trình HĐT Hỗ trợ các giao dịch kéo dài 24 Phạm Thị Ngọc Diễm OODB
  56. Cải tiến hiệu suất Sử dụng tham chiếu Ngôn ngữ hỏi có tính biểu hiện cao hơn Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Ưu điểm của OODBMS Khả năng mô hình hoá phong phú với nhiều kiểu dữ liệu có cấu trúc phức tạp và các kiểu dữ liệu mới (hình ảnh, âm thanh, etc.) Có khả năng mở rộng Tương thích với ngôn ngữ lập trình HĐT Hỗ trợ các giao dịch kéo dài Có khả năng áp dụng các trình ứng dụng chuyên sâu về CSDL 24 Phạm Thị Ngọc Diễm OODB
  57. Sử dụng tham chiếu Ngôn ngữ hỏi có tính biểu hiện cao hơn Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Ưu điểm của OODBMS Khả năng mô hình hoá phong phú với nhiều kiểu dữ liệu có cấu trúc phức tạp và các kiểu dữ liệu mới (hình ảnh, âm thanh, etc.) Có khả năng mở rộng Tương thích với ngôn ngữ lập trình HĐT Hỗ trợ các giao dịch kéo dài Có khả năng áp dụng các trình ứng dụng chuyên sâu về CSDL Cải tiến hiệu suất 24 Phạm Thị Ngọc Diễm OODB
  58. Ngôn ngữ hỏi có tính biểu hiện cao hơn Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Ưu điểm của OODBMS Khả năng mô hình hoá phong phú với nhiều kiểu dữ liệu có cấu trúc phức tạp và các kiểu dữ liệu mới (hình ảnh, âm thanh, etc.) Có khả năng mở rộng Tương thích với ngôn ngữ lập trình HĐT Hỗ trợ các giao dịch kéo dài Có khả năng áp dụng các trình ứng dụng chuyên sâu về CSDL Cải tiến hiệu suất Sử dụng tham chiếu 24 Phạm Thị Ngọc Diễm OODB
  59. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Ưu điểm của OODBMS Khả năng mô hình hoá phong phú với nhiều kiểu dữ liệu có cấu trúc phức tạp và các kiểu dữ liệu mới (hình ảnh, âm thanh, etc.) Có khả năng mở rộng Tương thích với ngôn ngữ lập trình HĐT Hỗ trợ các giao dịch kéo dài Có khả năng áp dụng các trình ứng dụng chuyên sâu về CSDL Cải tiến hiệu suất Sử dụng tham chiếu Ngôn ngữ hỏi có tính biểu hiện cao hơn 24 Phạm Thị Ngọc Diễm OODB
  60. Thiếu mô hình dữ liệu chung Thiếu chuẩn chung Hiệu suất bị giới hạn Phức tạp Thiếu hỗ trợ về khung nhìn Thiếu hỗ trợ về an toàn bảo mật Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Nhược điểm của OODBMS Thiếu cơ sở lý thuyết cho mô hình dữ liệu 25 Phạm Thị Ngọc Diễm OODB
  61. Thiếu chuẩn chung Hiệu suất bị giới hạn Phức tạp Thiếu hỗ trợ về khung nhìn Thiếu hỗ trợ về an toàn bảo mật Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Nhược điểm của OODBMS Thiếu cơ sở lý thuyết cho mô hình dữ liệu Thiếu mô hình dữ liệu chung 25 Phạm Thị Ngọc Diễm OODB
  62. Hiệu suất bị giới hạn Phức tạp Thiếu hỗ trợ về khung nhìn Thiếu hỗ trợ về an toàn bảo mật Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Nhược điểm của OODBMS Thiếu cơ sở lý thuyết cho mô hình dữ liệu Thiếu mô hình dữ liệu chung Thiếu chuẩn chung 25 Phạm Thị Ngọc Diễm OODB
  63. Phức tạp Thiếu hỗ trợ về khung nhìn Thiếu hỗ trợ về an toàn bảo mật Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Nhược điểm của OODBMS Thiếu cơ sở lý thuyết cho mô hình dữ liệu Thiếu mô hình dữ liệu chung Thiếu chuẩn chung Hiệu suất bị giới hạn 25 Phạm Thị Ngọc Diễm OODB
  64. Thiếu hỗ trợ về khung nhìn Thiếu hỗ trợ về an toàn bảo mật Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Nhược điểm của OODBMS Thiếu cơ sở lý thuyết cho mô hình dữ liệu Thiếu mô hình dữ liệu chung Thiếu chuẩn chung Hiệu suất bị giới hạn Phức tạp 25 Phạm Thị Ngọc Diễm OODB
  65. Thiếu hỗ trợ về an toàn bảo mật Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Nhược điểm của OODBMS Thiếu cơ sở lý thuyết cho mô hình dữ liệu Thiếu mô hình dữ liệu chung Thiếu chuẩn chung Hiệu suất bị giới hạn Phức tạp Thiếu hỗ trợ về khung nhìn 25 Phạm Thị Ngọc Diễm OODB
  66. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Nhược điểm của OODBMS Thiếu cơ sở lý thuyết cho mô hình dữ liệu Thiếu mô hình dữ liệu chung Thiếu chuẩn chung Hiệu suất bị giới hạn Phức tạp Thiếu hỗ trợ về khung nhìn Thiếu hỗ trợ về an toàn bảo mật 25 Phạm Thị Ngọc Diễm OODB
  67. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Nội dung 1 Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng Ưu nhược điểm của HQT CSDL quan hệ Tiếp cận hướng đối tượng 2 HQT CSDL hướng đối tượng Giới thiệu OODM và OODBMS Ưu và nhược điểm của OODBMS Các chuẩn Mô hình hóa 3 Ví dụ CSDL đào tạo 4 Kết luận 26 Phạm Thị Ngọc Diễm OODB
  68. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Chuẩn ODMG I CSDL quan hệ CSDL HĐT Cơ sở lý thuyết Sự ra đời của các HQT CSDL HĐT => Các HQT CSDL quan hệ ra đời => Chuẩn ODMG => ODMG được chấp nhận nhiều nhất, nhóm được nhiều nhà cung cấp HQT CSDL HĐT (Poet, Objectivity, Versant, GemStone, etc.), nhiều người sử dụng và các nhà nghiên cứu vì nó : - Cho phép đặc tả mô hình chuẩn về ngữ nghĩa cho các đối tượng CSDL và ; - Hỗ trợ khả năng tương tác (interoperability) giữa các OODBMS. 27 Phạm Thị Ngọc Diễm OODB
  69. Mô tả mô hình đối tượng (object model) và đặc tả của một sơ đồ (schema) trên mô hình đối tượng, Đề nghị ngôn ngữ định nghĩa (ODL) và truy vấn đối tượng (OQL), Cung cấp các API để định nghĩa và thao tác trên các đối tượng bằng C++, Smalltalk, và Java, Ánh xạ từ một thiết kế mức quan niệm sang một thiết kế mức logic theo hướng đối tượng. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Chuẩn ODMG II OMDG (1993) Là chuẩn cho các HQT CSDL "thuần" HĐT. 28 Phạm Thị Ngọc Diễm OODB
  70. Đề nghị ngôn ngữ định nghĩa (ODL) và truy vấn đối tượng (OQL), Cung cấp các API để định nghĩa và thao tác trên các đối tượng bằng C++, Smalltalk, và Java, Ánh xạ từ một thiết kế mức quan niệm sang một thiết kế mức logic theo hướng đối tượng. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Chuẩn ODMG II OMDG (1993) Là chuẩn cho các HQT CSDL "thuần" HĐT. Mô tả mô hình đối tượng (object model) và đặc tả của một sơ đồ (schema) trên mô hình đối tượng, 28 Phạm Thị Ngọc Diễm OODB
  71. Cung cấp các API để định nghĩa và thao tác trên các đối tượng bằng C++, Smalltalk, và Java, Ánh xạ từ một thiết kế mức quan niệm sang một thiết kế mức logic theo hướng đối tượng. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Chuẩn ODMG II OMDG (1993) Là chuẩn cho các HQT CSDL "thuần" HĐT. Mô tả mô hình đối tượng (object model) và đặc tả của một sơ đồ (schema) trên mô hình đối tượng, Đề nghị ngôn ngữ định nghĩa (ODL) và truy vấn đối tượng (OQL), 28 Phạm Thị Ngọc Diễm OODB
  72. Ánh xạ từ một thiết kế mức quan niệm sang một thiết kế mức logic theo hướng đối tượng. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Chuẩn ODMG II OMDG (1993) Là chuẩn cho các HQT CSDL "thuần" HĐT. Mô tả mô hình đối tượng (object model) và đặc tả của một sơ đồ (schema) trên mô hình đối tượng, Đề nghị ngôn ngữ định nghĩa (ODL) và truy vấn đối tượng (OQL), Cung cấp các API để định nghĩa và thao tác trên các đối tượng bằng C++, Smalltalk, và Java, 28 Phạm Thị Ngọc Diễm OODB
  73. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Chuẩn ODMG II OMDG (1993) Là chuẩn cho các HQT CSDL "thuần" HĐT. Mô tả mô hình đối tượng (object model) và đặc tả của một sơ đồ (schema) trên mô hình đối tượng, Đề nghị ngôn ngữ định nghĩa (ODL) và truy vấn đối tượng (OQL), Cung cấp các API để định nghĩa và thao tác trên các đối tượng bằng C++, Smalltalk, và Java, Ánh xạ từ một thiết kế mức quan niệm sang một thiết kế mức logic theo hướng đối tượng. 28 Phạm Thị Ngọc Diễm OODB
  74. Mở rộng SQL cho CSDL quan hệ với các tính năng HĐT và các tính năng khác như: đa phương tiên, không gian và thời gian, truy vấn đệ quy, etc. Tương thích với SQL 2 (1992) (các CSDL quan hệ có thể được sinh ra bằng cách sử dụng SQL 3). HQT CSDL quan hệ của các công ty lớn như Oracle, IBM, Sybase hỗ trợ SQL 3. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Chuẩn SQL 3 SQL 3 (1999) Do tổ chức ISO đề nghị, 29 Phạm Thị Ngọc Diễm OODB
  75. Tương thích với SQL 2 (1992) (các CSDL quan hệ có thể được sinh ra bằng cách sử dụng SQL 3). HQT CSDL quan hệ của các công ty lớn như Oracle, IBM, Sybase hỗ trợ SQL 3. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Chuẩn SQL 3 SQL 3 (1999) Do tổ chức ISO đề nghị, Mở rộng SQL cho CSDL quan hệ với các tính năng HĐT và các tính năng khác như: đa phương tiên, không gian và thời gian, truy vấn đệ quy, etc. 29 Phạm Thị Ngọc Diễm OODB
  76. HQT CSDL quan hệ của các công ty lớn như Oracle, IBM, Sybase hỗ trợ SQL 3. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Chuẩn SQL 3 SQL 3 (1999) Do tổ chức ISO đề nghị, Mở rộng SQL cho CSDL quan hệ với các tính năng HĐT và các tính năng khác như: đa phương tiên, không gian và thời gian, truy vấn đệ quy, etc. Tương thích với SQL 2 (1992) (các CSDL quan hệ có thể được sinh ra bằng cách sử dụng SQL 3). 29 Phạm Thị Ngọc Diễm OODB
  77. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Chuẩn SQL 3 SQL 3 (1999) Do tổ chức ISO đề nghị, Mở rộng SQL cho CSDL quan hệ với các tính năng HĐT và các tính năng khác như: đa phương tiên, không gian và thời gian, truy vấn đệ quy, etc. Tương thích với SQL 2 (1992) (các CSDL quan hệ có thể được sinh ra bằng cách sử dụng SQL 3). HQT CSDL quan hệ của các công ty lớn như Oracle, IBM, Sybase hỗ trợ SQL 3. 29 Phạm Thị Ngọc Diễm OODB
  78. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Nội dung 1 Giới thiệu Sự phát triển của HQT CSDL và các ứng dụng Ưu nhược điểm của HQT CSDL quan hệ Tiếp cận hướng đối tượng 2 HQT CSDL hướng đối tượng Giới thiệu OODM và OODBMS Ưu và nhược điểm của OODBMS Các chuẩn Mô hình hóa 3 Ví dụ CSDL đào tạo 4 Kết luận 30 Phạm Thị Ngọc Diễm OODB
  79. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các khái niệm chính Thế giới thực OODB Đối tượng Đối tượng Lớp đối tượng Tính chất Thuộc tính Phương thức Quan hệ Quan hệ cấu thành (composition) Tổng quát hóa/chuyên biệt hóa Kế thừa 31 Phạm Thị Ngọc Diễm OODB
  80. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Các kiểu dữ liệu 32 Phạm Thị Ngọc Diễm OODB
  81. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đối tượng có cấu trúc phức tạpI Mục tiêu: Biểu diễn trực tiếp đối tượng của thế giới thực. Ví dụ: Thế giới thực : NGƯỜI - Họ - Tên - Địa chỉ (số, đường, tỉnh/TP) - Con (Tên, phái, ngày sinh) CSDL quan hệ: NGUOI( idN, ho, ten, so, duong,tinh-TP ) CON( idC, ten, phai, ngaysinh, idN) 33 Phạm Thị Ngọc Diễm OODB
  82. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đối tượng có cấu trúc phức tạp II CSDL HĐT: Chỉ một đối tượng CLASS Nguoi { ATTRIBUTE ho : STRING ; ATTRIBUTE ten : STRING ; ATTRIBUTE Diachi : STRUCT adr { duong : STRING ; so : STRING ; tinhTP : STRING } ATTRIBUTE CacCon : LIST STRUCT Con { ten : STRING ; phai: ENUM {’M’, ’F’} ; ngaysinh : DATE } } 34 Phạm Thị Ngọc Diễm OODB
  83. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đối tượng có cấu trúc phức tạp III Thuộc tính có thể có cấu trúc phức hoặc đa trị. Sử dụng hàm tạo (constructor) : Cấu trúc phức : STRUCT Đa trị : Hàm tạo tập hợp : 1 Tập hợp : SET 2 Tập hợp với phần tử trùng : BAG 3 Mảng một chiều : ARRAY 4 Danh sách : LIST 5 Tự điển: DICTIONARY 35 Phạm Thị Ngọc Diễm OODB
  84. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đối tượng có cấu trúc phức tạpIV Các kiểu được định nghĩa bởi ứng dụng - Các hàm tạo cấu trúc phức tạp được sử dụng để: Định nghĩa các lớp đối tượng : CLASS có cấu trúc phức tạp Định nghĩa các kiểu dữ liệu: TYPEDEF thích hợp với ứng dụng - Tương tự như lớp các đối tượng, các kiểu dữ liệu được định nghĩa bởi ứng dụng cũng có: Cấu trúc phức tạp Các phương thức (method) 36 Phạm Thị Ngọc Diễm OODB
  85. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đối tượng có cấu trúc phức tạpV Ví dụ: Các kiểu dữ liệu (1) TYPEDEF T_Diachi STRUCT { ATTRIBUTE so : STRING ; ATTRIBUTE duong : STRING ; ATTRIBUTE tinhTP: STRING ; ATTRIBUTE nuoc: STRING } 37 Phạm Thị Ngọc Diễm OODB
  86. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đối tượng có cấu trúc phức tạp VI Ví dụ: Các kiểu dữ liệu (2) CLASS Sinhvien { ATTRIBUTE MSSV : STRING ; ATTRIBUTE ho : STRING ; ATTRIBUTE ten : STRING ; ATTRIBUTE diachi: T_Diachi ; ATTRIBUTE ngaysinh: DATE ; ATTRIBUTE phai : ENUM {’M’, ’F’} ; ATTRIBUTE monhoc : SET STRUCT { ATTRIBUTE tenmon : STRING ; ATTRIBUTE diem : FLOAT } } 38 Phạm Thị Ngọc Diễm OODB
  87. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Định danh đối tượng (OID: Object Identifier)I Mục tiêu: Định danh các đối tượng độc lập với giá trị và địa chỉ Mỗi đối tượng có OID riêng và phải: Tồn tại trong suốt chu kỳ sống của đối tượng, Không thay đổi trong suốt chu kỳ sống của đối tượng, Duy nhất trong CSDL. Các OID được quản lý bởi OODBMS OID là phương tiện hiệu quả để tham chiếu một đối tượng. Các oid do hệ thống quản lý, người dùng không thể truy xuất, thay đổi, in giá trị. 39 Phạm Thị Ngọc Diễm OODB
  88. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Định danh đối tượng (OID: Object Identifier) II Định danh vs. Khóa chính Trong RDBMS: OID= khóa chính : Phụ thuộc giá trị, Vấn đề nếu : cập nhật khóa chính hoặc thay đổi thuộc tính khóa. Trong OODBMS: khoá chính không dùng làm OID, vì: Khoá chính chỉ duy nhất trong 1 quan hệ, không phải trên toàn hệ thống. Khoá chính được chọn từ các thuộc tính => phụ thuộc vào trạng thái của đối tượng. Trong NN lập trình: tên biến. 40 Phạm Thị Ngọc Diễm OODB
  89. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Định danh đối tượng (OID: Object Identifier) III So sánh hai đối tượng Cần phân biệt 2 trường hợp: 2 đối tượng là một (identical): cùng OID => o1 == o2 2 đối tượng bằng nhau (equal): khác OID, nhưng giá trị các thuộc tính bằng nhau: Bằng cạn (shallow equality) : cùng giá trị: khi hai đối tượng o1 và o2 tham chiếu đến cùng đối tượng => o1 = o2 Bằng sâu (deep equality): khi hai đối tượng o1 và o2 tham chiếu đến hai đối tượng c1 và c2, tất cả các thuộc tính của hai đối tượng o1 và o2 phải bằng nhau (giá trị), tương tự cho c1 và c2 => o1 =* o2 Cho 2 đối tượng o1 và o2 của cùng lớp, ta có: o1 == o2 => o1 = o2 o1 = o2 => o1 =* o2 41 Phạm Thị Ngọc Diễm OODB
  90. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Định danh đối tượng (OID: Object Identifier) IV Ví dụ về so sánh hai đối tượng o1.B == o2.B ? o1 == o2 ? o1 = o2 ? o1 = o3 ? o1 =* o3 ? o21 = o22 ? o21 == o22 ? 42 Phạm Thị Ngọc Diễm OODB
  91. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thànhI Mục tiêu: Giới thiệu mối quan hệ cấu thành giữa các đối tượng trong thế giới thực Ví dụ: 43 Phạm Thị Ngọc Diễm OODB
  92. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành II Ví dụ CLASS Xehoi { CLASS Dongco { mau : STRING ; maso : STRING ; nhanhieu : STRING ; congsuat : FLOAT ; kieu : STRING ; soXilanh : INT } dongco : Dongco } Chú ý 2 kiểu thuộc tính : - Giá trị: (miền giá trị = STRING, INT,. . . kiểu cấu trúc) - Tham chiếu (miền giá trị = 1 lớp đối tượng) 44 Phạm Thị Ngọc Diễm OODB
  93. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành III Các ràng buộc toàn vẹn của quan hệ hợp thành Có hướng Có bản số bất kỳ dạng (min, max) Được biểu diễn trên sơ đồ bằng một mũi tên Được cài đặt bởi các thuộc tính tham chiếu trỏ đến các đối tượng hợp thành Các đối tượng hợp thành có thể được chia sẻ hoặc không Các đối tượng hợp thành có thể phụ thuộc hoặc không. Ràng buộc phụ thuộc xác định thứ tự mà các đối tượng được tạo ra (và hủy đi): đầu tiên là đối tượng được hợp thành hay đối tượng hợp thành. Một vài OODBMS đề nghị quan hệ đảo : Đối tượng được hợp thành phụ thuộc vào các đối tượng hợp thành. 45 Phạm Thị Ngọc Diễm OODB
  94. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành IV Quan hệ đảo Để có quan hệ hai chiều trong CSDL : Sử dụng quan hệ hợp thành và quan hệ đảo của nó Ví dụ CLASS Sinhvien { ATTRIBUTE mssv : STRING ; ATTRIBUTE ho : STRING ; ATTRIBUTE ten : STRING ; ATTRIBUTE dsmonhoc : SET STRUCT { ATTRIBUTE mon : Monhoc ; ATTRIBUTE diem : FLOAT } } 46 Phạm Thị Ngọc Diễm OODB
  95. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành V Ví dụ (tt) CLASS Monhoc { ATTRIBUTE tenmon : STRING ; ATTRIBUTE dssv : SET Sinhvien } => Thuộc tính dssv của Monhoc là thuộc tính tham chiếu đảo của thuộc tính dsmonhoc của lớp Sinhvien => Để bảo đảm tính chặt chẽ của các thuộc tính tham chiếu đảo. Một vài OODBMS cho phép khai báo các thuộc tính đảo bằng cách sử dụng INVERSE: CLASS Monhoc { ATTRIBUTE tenmon : STRING ; ATTRIBUTE dssv : SET Sinhvien INVERSE Sinhvien.dsmonhoc.mon} 47 Phạm Thị Ngọc Diễm OODB
  96. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành VI Quan hệ cấu thành và ODMG ODMG chỉ cho phép các thuộc tính tham chiếu là các thuộc tính của cấp độ đầu tiên của các lớp => thuộc tính hợp thành các thuộc tính phức không thể là các thuộc tính tham chiếu. Ví dụ : Lớp Sinhvien trên đây sẽ không thể khai báo theo OMDG vì thuộc tính tham chiếu mon là thuộc tính hợp thành. =>tạo lớp trung gian 48 Phạm Thị Ngọc Diễm OODB
  97. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành VII Quan hệ cấu thành và ODMG - Ví dụ 49 Phạm Thị Ngọc Diễm OODB
  98. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành VIII Quan hệ cấu thành và ODMG - Ví dụ CLASS Sinhvien { ATTRIBUTE mssv : STRING ; ATTRIBUTE ho : STRING ; ATTRIBUTE ten : STRING ; ATTRIBUTE dsmonhoc : SET Dangky } CLASS Dangky { ATTRIBUTE mon : Monhoc ; ATTRIBUTE diem : FLOAT ; ATTRIBUTE sv : Sinhvien INVERSE Sinhvien.dsmonhoc} CLASS Monhoc { ATTRIBUTE tenmon : STRING ; ATTRIBUTE dssv : SET Sinhvien INVERSE Dangky.mon} 50 Phạm Thị Ngọc Diễm OODB
  99. OODBMS phải đặt giá trị NULL cho các thuộc tính tham chiếu của những đối tượng hợp thành Nhưng hiếm khi điều này được thực hiện SELECT v.dongco.maso FROM v IN Xehoi WHERE mau = ’Golf GTI’ => Có thể bị treo !!! Thuộc tính tham chiếu = x UPDATE Xehoi WHERE mau = ’Golf GTI’ SET dongco = x => x phải là một trong các oid của lớp được tham chiếu Xóa một đối tượng hợp thành Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành IX Toàn vẹn tham chiếu OODBMS kiểm tra các phép gán : 51 Phạm Thị Ngọc Diễm OODB
  100. OODBMS phải đặt giá trị NULL cho các thuộc tính tham chiếu của những đối tượng hợp thành Nhưng hiếm khi điều này được thực hiện SELECT v.dongco.maso FROM v IN Xehoi WHERE mau = ’Golf GTI’ => Có thể bị treo !!! UPDATE Xehoi WHERE mau = ’Golf GTI’ SET dongco = x => x phải là một trong các oid của lớp được tham chiếu Xóa một đối tượng hợp thành Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành IX Toàn vẹn tham chiếu OODBMS kiểm tra các phép gán : Thuộc tính tham chiếu = x 51 Phạm Thị Ngọc Diễm OODB
  101. OODBMS phải đặt giá trị NULL cho các thuộc tính tham chiếu của những đối tượng hợp thành Nhưng hiếm khi điều này được thực hiện SELECT v.dongco.maso FROM v IN Xehoi WHERE mau = ’Golf GTI’ => Có thể bị treo !!! => x phải là một trong các oid của lớp được tham chiếu Xóa một đối tượng hợp thành Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành IX Toàn vẹn tham chiếu OODBMS kiểm tra các phép gán : Thuộc tính tham chiếu = x UPDATE Xehoi WHERE mau = ’Golf GTI’ SET dongco = x 51 Phạm Thị Ngọc Diễm OODB
  102. OODBMS phải đặt giá trị NULL cho các thuộc tính tham chiếu của những đối tượng hợp thành Nhưng hiếm khi điều này được thực hiện SELECT v.dongco.maso FROM v IN Xehoi WHERE mau = ’Golf GTI’ => Có thể bị treo !!! Xóa một đối tượng hợp thành Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành IX Toàn vẹn tham chiếu OODBMS kiểm tra các phép gán : Thuộc tính tham chiếu = x UPDATE Xehoi WHERE mau = ’Golf GTI’ SET dongco = x => x phải là một trong các oid của lớp được tham chiếu 51 Phạm Thị Ngọc Diễm OODB
  103. OODBMS phải đặt giá trị NULL cho các thuộc tính tham chiếu của những đối tượng hợp thành Nhưng hiếm khi điều này được thực hiện SELECT v.dongco.maso FROM v IN Xehoi WHERE mau = ’Golf GTI’ => Có thể bị treo !!! Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành IX Toàn vẹn tham chiếu OODBMS kiểm tra các phép gán : Thuộc tính tham chiếu = x UPDATE Xehoi WHERE mau = ’Golf GTI’ SET dongco = x => x phải là một trong các oid của lớp được tham chiếu Xóa một đối tượng hợp thành 51 Phạm Thị Ngọc Diễm OODB
  104. Nhưng hiếm khi điều này được thực hiện SELECT v.dongco.maso FROM v IN Xehoi WHERE mau = ’Golf GTI’ => Có thể bị treo !!! Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành IX Toàn vẹn tham chiếu OODBMS kiểm tra các phép gán : Thuộc tính tham chiếu = x UPDATE Xehoi WHERE mau = ’Golf GTI’ SET dongco = x => x phải là một trong các oid của lớp được tham chiếu Xóa một đối tượng hợp thành OODBMS phải đặt giá trị NULL cho các thuộc tính tham chiếu của những đối tượng hợp thành 51 Phạm Thị Ngọc Diễm OODB
  105. SELECT v.dongco.maso FROM v IN Xehoi WHERE mau = ’Golf GTI’ => Có thể bị treo !!! Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành IX Toàn vẹn tham chiếu OODBMS kiểm tra các phép gán : Thuộc tính tham chiếu = x UPDATE Xehoi WHERE mau = ’Golf GTI’ SET dongco = x => x phải là một trong các oid của lớp được tham chiếu Xóa một đối tượng hợp thành OODBMS phải đặt giá trị NULL cho các thuộc tính tham chiếu của những đối tượng hợp thành Nhưng hiếm khi điều này được thực hiện 51 Phạm Thị Ngọc Diễm OODB
  106. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Quan hệ cấu thành IX Toàn vẹn tham chiếu OODBMS kiểm tra các phép gán : Thuộc tính tham chiếu = x UPDATE Xehoi WHERE mau = ’Golf GTI’ SET dongco = x => x phải là một trong các oid của lớp được tham chiếu Xóa một đối tượng hợp thành OODBMS phải đặt giá trị NULL cho các thuộc tính tham chiếu của những đối tượng hợp thành Nhưng hiếm khi điều này được thực hiện SELECT v.dongco.maso FROM v IN Xehoi WHERE mau = ’Golf GTI’ => Có thể bị treo !!! 51 Phạm Thị Ngọc Diễm OODB
  107. Quan hệ is-a hay quan hệ phân cấp tổng quát hóa/chuyên biệt hóa hay quan hệ kế thừa, Ví dụ: Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Kế thừa I Mục tiêu: Biễu diễn một tập các đối tượng có các tính chất chung 52 Phạm Thị Ngọc Diễm OODB
  108. Ví dụ: Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Kế thừa I Mục tiêu: Biễu diễn một tập các đối tượng có các tính chất chung Quan hệ is-a hay quan hệ phân cấp tổng quát hóa/chuyên biệt hóa hay quan hệ kế thừa, 52 Phạm Thị Ngọc Diễm OODB
  109. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Kế thừa I Mục tiêu: Biễu diễn một tập các đối tượng có các tính chất chung Quan hệ is-a hay quan hệ phân cấp tổng quát hóa/chuyên biệt hóa hay quan hệ kế thừa, Ví dụ: 52 Phạm Thị Ngọc Diễm OODB
  110. Các thuộc tính riêng của nó, Các thuộc tính hoặc phương thức được định nghĩa lại, Tất cả đối tượng của một SC cũng là đối tượng của lớp PC, Tính thay thế: luôn có thể sử dụng đối tượng của lớp SC ở vị trí của lớp PC, Tính kế thừa : lớp con SC kế thừa các thuộc tính giá trị, các thuộc tính tham chiếu và các phương thức của lớp cha PC của nó. Lớp con SC có thể có: Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Kế thừa II Tính chất của quan hệ is-a Quan hệ nhị phân có hướng giữa lớp cha ( PC : parent class) và lớp con (SC: subclass) :SC->PC. Quan hệ này phải thỏa mãn ba quy tắc sau: 53 Phạm Thị Ngọc Diễm OODB
  111. Các thuộc tính riêng của nó, Các thuộc tính hoặc phương thức được định nghĩa lại, Tính thay thế: luôn có thể sử dụng đối tượng của lớp SC ở vị trí của lớp PC, Tính kế thừa : lớp con SC kế thừa các thuộc tính giá trị, các thuộc tính tham chiếu và các phương thức của lớp cha PC của nó. Lớp con SC có thể có: Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Kế thừa II Tính chất của quan hệ is-a Quan hệ nhị phân có hướng giữa lớp cha ( PC : parent class) và lớp con (SC: subclass) :SC->PC. Quan hệ này phải thỏa mãn ba quy tắc sau: Tất cả đối tượng của một SC cũng là đối tượng của lớp PC, 53 Phạm Thị Ngọc Diễm OODB
  112. Các thuộc tính riêng của nó, Các thuộc tính hoặc phương thức được định nghĩa lại, Tính kế thừa : lớp con SC kế thừa các thuộc tính giá trị, các thuộc tính tham chiếu và các phương thức của lớp cha PC của nó. Lớp con SC có thể có: Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Kế thừa II Tính chất của quan hệ is-a Quan hệ nhị phân có hướng giữa lớp cha ( PC : parent class) và lớp con (SC: subclass) :SC->PC. Quan hệ này phải thỏa mãn ba quy tắc sau: Tất cả đối tượng của một SC cũng là đối tượng của lớp PC, Tính thay thế: luôn có thể sử dụng đối tượng của lớp SC ở vị trí của lớp PC, 53 Phạm Thị Ngọc Diễm OODB
  113. Các thuộc tính riêng của nó, Các thuộc tính hoặc phương thức được định nghĩa lại, Lớp con SC có thể có: Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Kế thừa II Tính chất của quan hệ is-a Quan hệ nhị phân có hướng giữa lớp cha ( PC : parent class) và lớp con (SC: subclass) :SC->PC. Quan hệ này phải thỏa mãn ba quy tắc sau: Tất cả đối tượng của một SC cũng là đối tượng của lớp PC, Tính thay thế: luôn có thể sử dụng đối tượng của lớp SC ở vị trí của lớp PC, Tính kế thừa : lớp con SC kế thừa các thuộc tính giá trị, các thuộc tính tham chiếu và các phương thức của lớp cha PC của nó. 53 Phạm Thị Ngọc Diễm OODB
  114. Các thuộc tính riêng của nó, Các thuộc tính hoặc phương thức được định nghĩa lại, Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Kế thừa II Tính chất của quan hệ is-a Quan hệ nhị phân có hướng giữa lớp cha ( PC : parent class) và lớp con (SC: subclass) :SC->PC. Quan hệ này phải thỏa mãn ba quy tắc sau: Tất cả đối tượng của một SC cũng là đối tượng của lớp PC, Tính thay thế: luôn có thể sử dụng đối tượng của lớp SC ở vị trí của lớp PC, Tính kế thừa : lớp con SC kế thừa các thuộc tính giá trị, các thuộc tính tham chiếu và các phương thức của lớp cha PC của nó. Lớp con SC có thể có: 53 Phạm Thị Ngọc Diễm OODB
  115. Các thuộc tính hoặc phương thức được định nghĩa lại, Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Kế thừa II Tính chất của quan hệ is-a Quan hệ nhị phân có hướng giữa lớp cha ( PC : parent class) và lớp con (SC: subclass) :SC->PC. Quan hệ này phải thỏa mãn ba quy tắc sau: Tất cả đối tượng của một SC cũng là đối tượng của lớp PC, Tính thay thế: luôn có thể sử dụng đối tượng của lớp SC ở vị trí của lớp PC, Tính kế thừa : lớp con SC kế thừa các thuộc tính giá trị, các thuộc tính tham chiếu và các phương thức của lớp cha PC của nó. Lớp con SC có thể có: Các thuộc tính riêng của nó, 53 Phạm Thị Ngọc Diễm OODB
  116. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Kế thừa II Tính chất của quan hệ is-a Quan hệ nhị phân có hướng giữa lớp cha ( PC : parent class) và lớp con (SC: subclass) :SC->PC. Quan hệ này phải thỏa mãn ba quy tắc sau: Tất cả đối tượng của một SC cũng là đối tượng của lớp PC, Tính thay thế: luôn có thể sử dụng đối tượng của lớp SC ở vị trí của lớp PC, Tính kế thừa : lớp con SC kế thừa các thuộc tính giá trị, các thuộc tính tham chiếu và các phương thức của lớp cha PC của nó. Lớp con SC có thể có: Các thuộc tính riêng của nó, Các thuộc tính hoặc phương thức được định nghĩa lại, 53 Phạm Thị Ngọc Diễm OODB
  117. Phủ (coverage) : một tập con các thể hiện của PC là thể hiện của ít nhất một lớp SC. Phân hoạch (partition): thỏa mãn cả tách rời và phủ. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Kế thừa III Ràng buộc toàn vẹn trên quan hệ is-a Tách rời (disjoint) : một tập con các thể hiện của PC là thể hiện của nhiều nhất một lớp SC. 54 Phạm Thị Ngọc Diễm OODB
  118. Phân hoạch (partition): thỏa mãn cả tách rời và phủ. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Kế thừa III Ràng buộc toàn vẹn trên quan hệ is-a Tách rời (disjoint) : một tập con các thể hiện của PC là thể hiện của nhiều nhất một lớp SC. Phủ (coverage) : một tập con các thể hiện của PC là thể hiện của ít nhất một lớp SC. 54 Phạm Thị Ngọc Diễm OODB
  119. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Kế thừa III Ràng buộc toàn vẹn trên quan hệ is-a Tách rời (disjoint) : một tập con các thể hiện của PC là thể hiện của nhiều nhất một lớp SC. Phủ (coverage) : một tập con các thể hiện của PC là thể hiện của ít nhất một lớp SC. Phân hoạch (partition): thỏa mãn cả tách rời và phủ. 54 Phạm Thị Ngọc Diễm OODB
  120. Miền giá trị hoặc bản số được giới hạn, chỉ nhận một tập con của miền giá trị trong lớp cha PC) Bổ sung thuộc tính phức Giới hạn miền trị của thuộc tính: Không tồn tại trong tất cả các OODBMS Ví dụ : Giới hạn miền trị của thuộc tính Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Định nghĩa lại thuộc tính I Định nghĩa lại thuộc tính trong một lớp con (1) Định nghĩa mới cho thuộc tính 55 Phạm Thị Ngọc Diễm OODB
  121. Miền giá trị hoặc bản số được giới hạn, chỉ nhận một tập con của miền giá trị trong lớp cha PC) Bổ sung thuộc tính phức Không tồn tại trong tất cả các OODBMS Ví dụ : Giới hạn miền trị của thuộc tính Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Định nghĩa lại thuộc tính I Định nghĩa lại thuộc tính trong một lớp con (1) Định nghĩa mới cho thuộc tính Giới hạn miền trị của thuộc tính: 55 Phạm Thị Ngọc Diễm OODB
  122. Bổ sung thuộc tính phức Không tồn tại trong tất cả các OODBMS Ví dụ : Giới hạn miền trị của thuộc tính Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Định nghĩa lại thuộc tính I Định nghĩa lại thuộc tính trong một lớp con (1) Định nghĩa mới cho thuộc tính Giới hạn miền trị của thuộc tính: Miền giá trị hoặc bản số được giới hạn, chỉ nhận một tập con của miền giá trị trong lớp cha PC) 55 Phạm Thị Ngọc Diễm OODB
  123. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Định nghĩa lại thuộc tính I Định nghĩa lại thuộc tính trong một lớp con (1) Định nghĩa mới cho thuộc tính Giới hạn miền trị của thuộc tính: Miền giá trị hoặc bản số được giới hạn, chỉ nhận một tập con của miền giá trị trong lớp cha PC) Bổ sung thuộc tính phức Không tồn tại trong tất cả các OODBMS Ví dụ : Giới hạn miền trị của thuộc tính 55 Phạm Thị Ngọc Diễm OODB
  124. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Định nghĩa lại thuộc tính II Định nghĩa lại thuộc tính trong một lớp con (2) Ví dụ : Hoàn chỉnh thuộc tính phức Chú ý Trong ODMG, quan hệ is-a được biểu diễn bằng dấu hai chấm (:). 56 Phạm Thị Ngọc Diễm OODB
  125. => Phần lớn OODBMS cho phép định nghĩa sự phân cấp tĩnh Phần lớn OODBMS giới hạn khả năng (tách rời/phủ) phân cấp tổng quát hóa/chuyên biệt hóa Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Hạn chế của sự phân cấp Kế thừa động ? => Một sinh viên có thể trở thành một giáo viên ? 57 Phạm Thị Ngọc Diễm OODB
  126. Phần lớn OODBMS giới hạn khả năng (tách rời/phủ) phân cấp tổng quát hóa/chuyên biệt hóa Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Hạn chế của sự phân cấp Kế thừa động ? => Một sinh viên có thể trở thành một giáo viên ? => Phần lớn OODBMS cho phép định nghĩa sự phân cấp tĩnh 57 Phạm Thị Ngọc Diễm OODB
  127. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Hạn chế của sự phân cấp Kế thừa động ? => Một sinh viên có thể trở thành một giáo viên ? => Phần lớn OODBMS cho phép định nghĩa sự phân cấp tĩnh Phần lớn OODBMS giới hạn khả năng (tách rời/phủ) phân cấp tổng quát hóa/chuyên biệt hóa 57 Phạm Thị Ngọc Diễm OODB
  128. Ví dụ Xung đột khi kế thừa thuộc tính và phương thức : => Hai thuộc tính/phương thức của hai lớp cha có thể có cùng tên và không giống nhau. => Lớp con sử dụng thuộc tính/phương thức của lớp cha nào ? Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đa kế thừa I Một lớp con SC có thể có nhiều lớp cha PC 58 Phạm Thị Ngọc Diễm OODB
  129. Xung đột khi kế thừa thuộc tính và phương thức : => Hai thuộc tính/phương thức của hai lớp cha có thể có cùng tên và không giống nhau. => Lớp con sử dụng thuộc tính/phương thức của lớp cha nào ? Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đa kế thừa I Một lớp con SC có thể có nhiều lớp cha PC Ví dụ 58 Phạm Thị Ngọc Diễm OODB
  130. => Hai thuộc tính/phương thức của hai lớp cha có thể có cùng tên và không giống nhau. => Lớp con sử dụng thuộc tính/phương thức của lớp cha nào ? Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đa kế thừa I Một lớp con SC có thể có nhiều lớp cha PC Ví dụ Xung đột khi kế thừa thuộc tính và phương thức : 58 Phạm Thị Ngọc Diễm OODB
  131. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đa kế thừa I Một lớp con SC có thể có nhiều lớp cha PC Ví dụ Xung đột khi kế thừa thuộc tính và phương thức : => Hai thuộc tính/phương thức của hai lớp cha có thể có cùng tên và không giống nhau. => Lớp con sử dụng thuộc tính/phương thức của lớp cha nào ? 58 Phạm Thị Ngọc Diễm OODB
  132. Hoặc tự động đặt trước tên của các thuộc tính hoặc phương thức bằng tên của lớp cha (bởi hệ thống). Hoặc áp dụng một sự lựa chọn (bởi hệ thống) dựa theo một quy tắc, ví dụ chọn lớp cha đầu tiên được khai báo. Hoặc người thiết kế quyết định vào lúc định nghĩa sơ đồ dữ liệu (tĩnh) hoặc vào lúc truy xuất (động). Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đa kế thừa II Giải quyết xung đột Tùy vào từng OODBMS: Hoặc không giải quyết trường hợp này, không cho phép định nghĩa 1 sơ đồ dữ liệu như thế. => Đặt tên lại thuộc tính/phương thức. 59 Phạm Thị Ngọc Diễm OODB
  133. Hoặc áp dụng một sự lựa chọn (bởi hệ thống) dựa theo một quy tắc, ví dụ chọn lớp cha đầu tiên được khai báo. Hoặc người thiết kế quyết định vào lúc định nghĩa sơ đồ dữ liệu (tĩnh) hoặc vào lúc truy xuất (động). Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đa kế thừa II Giải quyết xung đột Tùy vào từng OODBMS: Hoặc không giải quyết trường hợp này, không cho phép định nghĩa 1 sơ đồ dữ liệu như thế. => Đặt tên lại thuộc tính/phương thức. Hoặc tự động đặt trước tên của các thuộc tính hoặc phương thức bằng tên của lớp cha (bởi hệ thống). 59 Phạm Thị Ngọc Diễm OODB
  134. Hoặc người thiết kế quyết định vào lúc định nghĩa sơ đồ dữ liệu (tĩnh) hoặc vào lúc truy xuất (động). Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đa kế thừa II Giải quyết xung đột Tùy vào từng OODBMS: Hoặc không giải quyết trường hợp này, không cho phép định nghĩa 1 sơ đồ dữ liệu như thế. => Đặt tên lại thuộc tính/phương thức. Hoặc tự động đặt trước tên của các thuộc tính hoặc phương thức bằng tên của lớp cha (bởi hệ thống). Hoặc áp dụng một sự lựa chọn (bởi hệ thống) dựa theo một quy tắc, ví dụ chọn lớp cha đầu tiên được khai báo. 59 Phạm Thị Ngọc Diễm OODB
  135. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Đa kế thừa II Giải quyết xung đột Tùy vào từng OODBMS: Hoặc không giải quyết trường hợp này, không cho phép định nghĩa 1 sơ đồ dữ liệu như thế. => Đặt tên lại thuộc tính/phương thức. Hoặc tự động đặt trước tên của các thuộc tính hoặc phương thức bằng tên của lớp cha (bởi hệ thống). Hoặc áp dụng một sự lựa chọn (bởi hệ thống) dựa theo một quy tắc, ví dụ chọn lớp cha đầu tiên được khai báo. Hoặc người thiết kế quyết định vào lúc định nghĩa sơ đồ dữ liệu (tĩnh) hoặc vào lúc truy xuất (động). 59 Phạm Thị Ngọc Diễm OODB
  136. Với kế thừa : 1 đối tượng=1 "mẫu tin" (trong lớp con sâu nhất) Không kế thừa :1 đối tượng=1 "mẫu tin"/lớp (lớp đó và các lớp cha) Lưu trữ một đối tượng. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Cài đặt kế thừa Ngôn ngữ hỏi : SELECT * FROM Nguoi => Kết quả ??? => Theo định dạng nào ??? 60 Phạm Thị Ngọc Diễm OODB
  137. Với kế thừa : 1 đối tượng=1 "mẫu tin" (trong lớp con sâu nhất) Không kế thừa :1 đối tượng=1 "mẫu tin"/lớp (lớp đó và các lớp cha) Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Cài đặt kế thừa Ngôn ngữ hỏi : SELECT * FROM Nguoi => Kết quả ??? => Theo định dạng nào ??? Lưu trữ một đối tượng. 60 Phạm Thị Ngọc Diễm OODB
  138. Không kế thừa :1 đối tượng=1 "mẫu tin"/lớp (lớp đó và các lớp cha) Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Cài đặt kế thừa Ngôn ngữ hỏi : SELECT * FROM Nguoi => Kết quả ??? => Theo định dạng nào ??? Lưu trữ một đối tượng. Với kế thừa : 1 đối tượng=1 "mẫu tin" (trong lớp con sâu nhất) 60 Phạm Thị Ngọc Diễm OODB
  139. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Cài đặt kế thừa Ngôn ngữ hỏi : SELECT * FROM Nguoi => Kết quả ??? => Theo định dạng nào ??? Lưu trữ một đối tượng. Với kế thừa : 1 đối tượng=1 "mẫu tin" (trong lớp con sâu nhất) Không kế thừa :1 đối tượng=1 "mẫu tin"/lớp (lớp đó và các lớp cha) 60 Phạm Thị Ngọc Diễm OODB
  140. Định nghĩa cấu trúc cho các dữ liệu tiềm năng của kiểu/quan hệ. Khai báo một thùng chứa (container) chứa tất cả các thể hiện hiện có và bền vững của kiểu/quan hệ. => Thùng chứa này được gọi là "dân số" (population) của kiểu/quan hệ. DBMS trước đây, 1 kiểu/quan hệ (CSDL quan hệ): Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững I Mục tiêu: - CSDL: quản lý một tập các đối tượng bền vững : "dân số" (population) - NN LT HĐT : cho phép người sử dụng thao tác cùng cách những đối tượng tạm thời và những đối tượng bền vững 61 Phạm Thị Ngọc Diễm OODB
  141. Định nghĩa cấu trúc cho các dữ liệu tiềm năng của kiểu/quan hệ. Khai báo một thùng chứa (container) chứa tất cả các thể hiện hiện có và bền vững của kiểu/quan hệ. => Thùng chứa này được gọi là "dân số" (population) của kiểu/quan hệ. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững I Mục tiêu: - CSDL: quản lý một tập các đối tượng bền vững : "dân số" (population) - NN LT HĐT : cho phép người sử dụng thao tác cùng cách những đối tượng tạm thời và những đối tượng bền vững DBMS trước đây, 1 kiểu/quan hệ (CSDL quan hệ): 61 Phạm Thị Ngọc Diễm OODB
  142. Khai báo một thùng chứa (container) chứa tất cả các thể hiện hiện có và bền vững của kiểu/quan hệ. => Thùng chứa này được gọi là "dân số" (population) của kiểu/quan hệ. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững I Mục tiêu: - CSDL: quản lý một tập các đối tượng bền vững : "dân số" (population) - NN LT HĐT : cho phép người sử dụng thao tác cùng cách những đối tượng tạm thời và những đối tượng bền vững DBMS trước đây, 1 kiểu/quan hệ (CSDL quan hệ): Định nghĩa cấu trúc cho các dữ liệu tiềm năng của kiểu/quan hệ. 61 Phạm Thị Ngọc Diễm OODB
  143. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững I Mục tiêu: - CSDL: quản lý một tập các đối tượng bền vững : "dân số" (population) - NN LT HĐT : cho phép người sử dụng thao tác cùng cách những đối tượng tạm thời và những đối tượng bền vững DBMS trước đây, 1 kiểu/quan hệ (CSDL quan hệ): Định nghĩa cấu trúc cho các dữ liệu tiềm năng của kiểu/quan hệ. Khai báo một thùng chứa (container) chứa tất cả các thể hiện hiện có và bền vững của kiểu/quan hệ. => Thùng chứa này được gọi là "dân số" (population) của kiểu/quan hệ. 61 Phạm Thị Ngọc Diễm OODB
  144. Kết hợp mỗi lớp với "dân số" bền vững của nó . ODMG: người thiết kế chọn việc định nghĩa hay không một thùng chứa vào lúc khai báo lớp nhờ vào mệnh đề : EXTENT 1 kiểu/lớp chỉ mô tả cấu trúc cho các đối tượng cùng kiểu. Các đối tượng là tạm thời ( chu kỳ sống của chúng = chu kỳ sống của chương trình trừ khi chúng được lưu vào các tập tin). OODBMS xuất phát từ quan điểm CSDL: Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững II NN LT HĐT: 62 Phạm Thị Ngọc Diễm OODB
  145. Kết hợp mỗi lớp với "dân số" bền vững của nó . ODMG: người thiết kế chọn việc định nghĩa hay không một thùng chứa vào lúc khai báo lớp nhờ vào mệnh đề : EXTENT Các đối tượng là tạm thời ( chu kỳ sống của chúng = chu kỳ sống của chương trình trừ khi chúng được lưu vào các tập tin). OODBMS xuất phát từ quan điểm CSDL: Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững II NN LT HĐT: 1 kiểu/lớp chỉ mô tả cấu trúc cho các đối tượng cùng kiểu. 62 Phạm Thị Ngọc Diễm OODB
  146. Kết hợp mỗi lớp với "dân số" bền vững của nó . ODMG: người thiết kế chọn việc định nghĩa hay không một thùng chứa vào lúc khai báo lớp nhờ vào mệnh đề : EXTENT OODBMS xuất phát từ quan điểm CSDL: Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững II NN LT HĐT: 1 kiểu/lớp chỉ mô tả cấu trúc cho các đối tượng cùng kiểu. Các đối tượng là tạm thời ( chu kỳ sống của chúng = chu kỳ sống của chương trình trừ khi chúng được lưu vào các tập tin). 62 Phạm Thị Ngọc Diễm OODB
  147. Kết hợp mỗi lớp với "dân số" bền vững của nó . ODMG: người thiết kế chọn việc định nghĩa hay không một thùng chứa vào lúc khai báo lớp nhờ vào mệnh đề : EXTENT Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững II NN LT HĐT: 1 kiểu/lớp chỉ mô tả cấu trúc cho các đối tượng cùng kiểu. Các đối tượng là tạm thời ( chu kỳ sống của chúng = chu kỳ sống của chương trình trừ khi chúng được lưu vào các tập tin). OODBMS xuất phát từ quan điểm CSDL: 62 Phạm Thị Ngọc Diễm OODB
  148. ODMG: người thiết kế chọn việc định nghĩa hay không một thùng chứa vào lúc khai báo lớp nhờ vào mệnh đề : EXTENT Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững II NN LT HĐT: 1 kiểu/lớp chỉ mô tả cấu trúc cho các đối tượng cùng kiểu. Các đối tượng là tạm thời ( chu kỳ sống của chúng = chu kỳ sống của chương trình trừ khi chúng được lưu vào các tập tin). OODBMS xuất phát từ quan điểm CSDL: Kết hợp mỗi lớp với "dân số" bền vững của nó . 62 Phạm Thị Ngọc Diễm OODB
  149. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững II NN LT HĐT: 1 kiểu/lớp chỉ mô tả cấu trúc cho các đối tượng cùng kiểu. Các đối tượng là tạm thời ( chu kỳ sống của chúng = chu kỳ sống của chương trình trừ khi chúng được lưu vào các tập tin). OODBMS xuất phát từ quan điểm CSDL: Kết hợp mỗi lớp với "dân số" bền vững của nó . ODMG: người thiết kế chọn việc định nghĩa hay không một thùng chứa vào lúc khai báo lớp nhờ vào mệnh đề : EXTENT 62 Phạm Thị Ngọc Diễm OODB
  150. Lớp chỉ định nghĩa cấu trúc dữ liệu. OODBMS không kết hợp bất kỳ "dân số" nào. Người sử dụng tạo thùng chứa để lưu trữ các đối tượng. => Định nghĩa biến hoặc đối tượng kiểu tập hợp (SET, LIST, BAG hoặc ARRAY) để lưu trữ các oid của các đối tượng mà người sử dụng muốn nhóm lại Ví dụ: m : Giaovien; tapGiaovien : SET Giaovien ; /* khai báo*/ tapGiaovien.insert_element(m) ; /* thêm*/ SELECT x.ten FROM x IN tapGiaovien /* sử dụng*/ Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững III OODBMS xuất phát từ quan điểm OOLP: 63 Phạm Thị Ngọc Diễm OODB
  151. OODBMS không kết hợp bất kỳ "dân số" nào. Người sử dụng tạo thùng chứa để lưu trữ các đối tượng. => Định nghĩa biến hoặc đối tượng kiểu tập hợp (SET, LIST, BAG hoặc ARRAY) để lưu trữ các oid của các đối tượng mà người sử dụng muốn nhóm lại Ví dụ: m : Giaovien; tapGiaovien : SET Giaovien ; /* khai báo*/ tapGiaovien.insert_element(m) ; /* thêm*/ SELECT x.ten FROM x IN tapGiaovien /* sử dụng*/ Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững III OODBMS xuất phát từ quan điểm OOLP: Lớp chỉ định nghĩa cấu trúc dữ liệu. 63 Phạm Thị Ngọc Diễm OODB
  152. => Định nghĩa biến hoặc đối tượng kiểu tập hợp (SET, LIST, BAG hoặc ARRAY) để lưu trữ các oid của các đối tượng mà người sử dụng muốn nhóm lại Ví dụ: m : Giaovien; tapGiaovien : SET Giaovien ; /* khai báo*/ tapGiaovien.insert_element(m) ; /* thêm*/ SELECT x.ten FROM x IN tapGiaovien /* sử dụng*/ Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững III OODBMS xuất phát từ quan điểm OOLP: Lớp chỉ định nghĩa cấu trúc dữ liệu. OODBMS không kết hợp bất kỳ "dân số" nào. Người sử dụng tạo thùng chứa để lưu trữ các đối tượng. 63 Phạm Thị Ngọc Diễm OODB
  153. Ví dụ: m : Giaovien; tapGiaovien : SET Giaovien ; /* khai báo*/ tapGiaovien.insert_element(m) ; /* thêm*/ SELECT x.ten FROM x IN tapGiaovien /* sử dụng*/ Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững III OODBMS xuất phát từ quan điểm OOLP: Lớp chỉ định nghĩa cấu trúc dữ liệu. OODBMS không kết hợp bất kỳ "dân số" nào. Người sử dụng tạo thùng chứa để lưu trữ các đối tượng. => Định nghĩa biến hoặc đối tượng kiểu tập hợp (SET, LIST, BAG hoặc ARRAY) để lưu trữ các oid của các đối tượng mà người sử dụng muốn nhóm lại 63 Phạm Thị Ngọc Diễm OODB
  154. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững III OODBMS xuất phát từ quan điểm OOLP: Lớp chỉ định nghĩa cấu trúc dữ liệu. OODBMS không kết hợp bất kỳ "dân số" nào. Người sử dụng tạo thùng chứa để lưu trữ các đối tượng. => Định nghĩa biến hoặc đối tượng kiểu tập hợp (SET, LIST, BAG hoặc ARRAY) để lưu trữ các oid của các đối tượng mà người sử dụng muốn nhóm lại Ví dụ: m : Giaovien; tapGiaovien : SET Giaovien ; /* khai báo*/ tapGiaovien.insert_element(m) ; /* thêm*/ SELECT x.ten FROM x IN tapGiaovien /* sử dụng*/ 63 Phạm Thị Ngọc Diễm OODB
  155. Chỉ thị/lệnh cho phép 1 đối tượng trở thành bền vững (ODMG). => Ví dụ: Name giamdoc : Nguoi ; Dựa vào quy tắc "Đối tượng được cấu thành là bền vững thì các đối tượng cấu thành là bền vững" ( giải pháp bởi Gemstone và O2). => Ví dụ: thêm chỉ thị thêm đối tượng cấu thành vào đối tượng được cấu thành. OODBMS quản lý 2 kiểu đối tượng: bền vững và tạm thời. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững IV OODBMS xuất phát từ quan điểm OOLP (tt): 64 Phạm Thị Ngọc Diễm OODB
  156. Chỉ thị/lệnh cho phép 1 đối tượng trở thành bền vững (ODMG). => Ví dụ: Name giamdoc : Nguoi ; Dựa vào quy tắc "Đối tượng được cấu thành là bền vững thì các đối tượng cấu thành là bền vững" ( giải pháp bởi Gemstone và O2). => Ví dụ: thêm chỉ thị thêm đối tượng cấu thành vào đối tượng được cấu thành. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững IV OODBMS xuất phát từ quan điểm OOLP (tt): OODBMS quản lý 2 kiểu đối tượng: bền vững và tạm thời. 64 Phạm Thị Ngọc Diễm OODB
  157. Dựa vào quy tắc "Đối tượng được cấu thành là bền vững thì các đối tượng cấu thành là bền vững" ( giải pháp bởi Gemstone và O2). => Ví dụ: thêm chỉ thị thêm đối tượng cấu thành vào đối tượng được cấu thành. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững IV OODBMS xuất phát từ quan điểm OOLP (tt): OODBMS quản lý 2 kiểu đối tượng: bền vững và tạm thời. Chỉ thị/lệnh cho phép 1 đối tượng trở thành bền vững (ODMG). => Ví dụ: Name giamdoc : Nguoi ; 64 Phạm Thị Ngọc Diễm OODB
  158. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững IV OODBMS xuất phát từ quan điểm OOLP (tt): OODBMS quản lý 2 kiểu đối tượng: bền vững và tạm thời. Chỉ thị/lệnh cho phép 1 đối tượng trở thành bền vững (ODMG). => Ví dụ: Name giamdoc : Nguoi ; Dựa vào quy tắc "Đối tượng được cấu thành là bền vững thì các đối tượng cấu thành là bền vững" ( giải pháp bởi Gemstone và O2). => Ví dụ: thêm chỉ thị thêm đối tượng cấu thành vào đối tượng được cấu thành. 64 Phạm Thị Ngọc Diễm OODB
  159. Cùng một phương thức có thể được áp dụng cho những đối tượng tạm thời và đối tượng bền vững. Một đối tượng bền vững không thể tham chiếu những đối tượng tạm thời. Trạng thái bền vững/tạm thời có thể thay đổi bất kỳ thời điểm nào. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững V Tính chất của sự bền vững Cho cùng một lớp: có thể có những đối tượng tạm thời và đối tượng bền vững. 65 Phạm Thị Ngọc Diễm OODB
  160. Một đối tượng bền vững không thể tham chiếu những đối tượng tạm thời. Trạng thái bền vững/tạm thời có thể thay đổi bất kỳ thời điểm nào. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững V Tính chất của sự bền vững Cho cùng một lớp: có thể có những đối tượng tạm thời và đối tượng bền vững. Cùng một phương thức có thể được áp dụng cho những đối tượng tạm thời và đối tượng bền vững. 65 Phạm Thị Ngọc Diễm OODB
  161. Trạng thái bền vững/tạm thời có thể thay đổi bất kỳ thời điểm nào. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững V Tính chất của sự bền vững Cho cùng một lớp: có thể có những đối tượng tạm thời và đối tượng bền vững. Cùng một phương thức có thể được áp dụng cho những đối tượng tạm thời và đối tượng bền vững. Một đối tượng bền vững không thể tham chiếu những đối tượng tạm thời. 65 Phạm Thị Ngọc Diễm OODB
  162. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững V Tính chất của sự bền vững Cho cùng một lớp: có thể có những đối tượng tạm thời và đối tượng bền vững. Cùng một phương thức có thể được áp dụng cho những đối tượng tạm thời và đối tượng bền vững. Một đối tượng bền vững không thể tham chiếu những đối tượng tạm thời. Trạng thái bền vững/tạm thời có thể thay đổi bất kỳ thời điểm nào. 65 Phạm Thị Ngọc Diễm OODB
  163. Chỉ ra bởi 1 lệnh ở bất kỳ thời điểm nào Ví dụ: tapGiaovien.save() Bởi việc truy xuất từ gốc của sự bền vững: "Tất cả đối tượng cấu thành của một đối tượng bền vững là bền vững" Ví dụ: PersistList.insert_last_element(tapgiaovien) Tất cả là bền vững Lớp: sự bền vững được chỉ ra lúc khai báo lớp Thể hiện: sự bền vững được chỉ ra vào lúc tạo thể hiện Động : Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững VI Kỹ thuật bền vững Hai mô hình bền vững khác nhau: Tĩnh : 66 Phạm Thị Ngọc Diễm OODB
  164. Chỉ ra bởi 1 lệnh ở bất kỳ thời điểm nào Ví dụ: tapGiaovien.save() Bởi việc truy xuất từ gốc của sự bền vững: "Tất cả đối tượng cấu thành của một đối tượng bền vững là bền vững" Ví dụ: PersistList.insert_last_element(tapgiaovien) Lớp: sự bền vững được chỉ ra lúc khai báo lớp Thể hiện: sự bền vững được chỉ ra vào lúc tạo thể hiện Động : Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững VI Kỹ thuật bền vững Hai mô hình bền vững khác nhau: Tĩnh : Tất cả là bền vững 66 Phạm Thị Ngọc Diễm OODB
  165. Chỉ ra bởi 1 lệnh ở bất kỳ thời điểm nào Ví dụ: tapGiaovien.save() Bởi việc truy xuất từ gốc của sự bền vững: "Tất cả đối tượng cấu thành của một đối tượng bền vững là bền vững" Ví dụ: PersistList.insert_last_element(tapgiaovien) Thể hiện: sự bền vững được chỉ ra vào lúc tạo thể hiện Động : Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững VI Kỹ thuật bền vững Hai mô hình bền vững khác nhau: Tĩnh : Tất cả là bền vững Lớp: sự bền vững được chỉ ra lúc khai báo lớp 66 Phạm Thị Ngọc Diễm OODB
  166. Chỉ ra bởi 1 lệnh ở bất kỳ thời điểm nào Ví dụ: tapGiaovien.save() Bởi việc truy xuất từ gốc của sự bền vững: "Tất cả đối tượng cấu thành của một đối tượng bền vững là bền vững" Ví dụ: PersistList.insert_last_element(tapgiaovien) Động : Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững VI Kỹ thuật bền vững Hai mô hình bền vững khác nhau: Tĩnh : Tất cả là bền vững Lớp: sự bền vững được chỉ ra lúc khai báo lớp Thể hiện: sự bền vững được chỉ ra vào lúc tạo thể hiện 66 Phạm Thị Ngọc Diễm OODB
  167. Chỉ ra bởi 1 lệnh ở bất kỳ thời điểm nào Ví dụ: tapGiaovien.save() Bởi việc truy xuất từ gốc của sự bền vững: "Tất cả đối tượng cấu thành của một đối tượng bền vững là bền vững" Ví dụ: PersistList.insert_last_element(tapgiaovien) Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững VI Kỹ thuật bền vững Hai mô hình bền vững khác nhau: Tĩnh : Tất cả là bền vững Lớp: sự bền vững được chỉ ra lúc khai báo lớp Thể hiện: sự bền vững được chỉ ra vào lúc tạo thể hiện Động : 66 Phạm Thị Ngọc Diễm OODB
  168. Bởi việc truy xuất từ gốc của sự bền vững: "Tất cả đối tượng cấu thành của một đối tượng bền vững là bền vững" Ví dụ: PersistList.insert_last_element(tapgiaovien) Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững VI Kỹ thuật bền vững Hai mô hình bền vững khác nhau: Tĩnh : Tất cả là bền vững Lớp: sự bền vững được chỉ ra lúc khai báo lớp Thể hiện: sự bền vững được chỉ ra vào lúc tạo thể hiện Động : Chỉ ra bởi 1 lệnh ở bất kỳ thời điểm nào Ví dụ: tapGiaovien.save() 66 Phạm Thị Ngọc Diễm OODB
  169. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững VI Kỹ thuật bền vững Hai mô hình bền vững khác nhau: Tĩnh : Tất cả là bền vững Lớp: sự bền vững được chỉ ra lúc khai báo lớp Thể hiện: sự bền vững được chỉ ra vào lúc tạo thể hiện Động : Chỉ ra bởi 1 lệnh ở bất kỳ thời điểm nào Ví dụ: tapGiaovien.save() Bởi việc truy xuất từ gốc của sự bền vững: "Tất cả đối tượng cấu thành của một đối tượng bền vững là bền vững" Ví dụ: PersistList.insert_last_element(tapgiaovien) 66 Phạm Thị Ngọc Diễm OODB
  170. Tất cả đối tượng là bền vững Mỗi lớp có 1 (hoặc 0) "dân số" Nếu "dân số" tồn tại thị tất cả các đối tượng tự động lưu vào trong nó. Cú pháp : CLASS [ EXTENT ] Người dùng có thể kết hợp tên bền vững với một vài đối tượng Ví dụ: NAME giamdoc : Nhansu /* khai báo biến bền vững có tên*/ giamdoc := Nhansu (id: 1111,ho: ’Iksal’. . . ) /* tạo đối tượng giám đốc*/ Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững VII ODMG Sử dụng tiếp cận theo kiểu HQT CSDL cũ. 67 Phạm Thị Ngọc Diễm OODB
  171. Mỗi lớp có 1 (hoặc 0) "dân số" Nếu "dân số" tồn tại thị tất cả các đối tượng tự động lưu vào trong nó. Cú pháp : CLASS [ EXTENT ] Người dùng có thể kết hợp tên bền vững với một vài đối tượng Ví dụ: NAME giamdoc : Nhansu /* khai báo biến bền vững có tên*/ giamdoc := Nhansu (id: 1111,ho: ’Iksal’. . . ) /* tạo đối tượng giám đốc*/ Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững VII ODMG Sử dụng tiếp cận theo kiểu HQT CSDL cũ. Tất cả đối tượng là bền vững 67 Phạm Thị Ngọc Diễm OODB
  172. Nếu "dân số" tồn tại thị tất cả các đối tượng tự động lưu vào trong nó. Cú pháp : CLASS [ EXTENT ] Người dùng có thể kết hợp tên bền vững với một vài đối tượng Ví dụ: NAME giamdoc : Nhansu /* khai báo biến bền vững có tên*/ giamdoc := Nhansu (id: 1111,ho: ’Iksal’. . . ) /* tạo đối tượng giám đốc*/ Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững VII ODMG Sử dụng tiếp cận theo kiểu HQT CSDL cũ. Tất cả đối tượng là bền vững Mỗi lớp có 1 (hoặc 0) "dân số" 67 Phạm Thị Ngọc Diễm OODB
  173. Cú pháp : CLASS [ EXTENT ] Người dùng có thể kết hợp tên bền vững với một vài đối tượng Ví dụ: NAME giamdoc : Nhansu /* khai báo biến bền vững có tên*/ giamdoc := Nhansu (id: 1111,ho: ’Iksal’. . . ) /* tạo đối tượng giám đốc*/ Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững VII ODMG Sử dụng tiếp cận theo kiểu HQT CSDL cũ. Tất cả đối tượng là bền vững Mỗi lớp có 1 (hoặc 0) "dân số" Nếu "dân số" tồn tại thị tất cả các đối tượng tự động lưu vào trong nó. 67 Phạm Thị Ngọc Diễm OODB
  174. Người dùng có thể kết hợp tên bền vững với một vài đối tượng Ví dụ: NAME giamdoc : Nhansu /* khai báo biến bền vững có tên*/ giamdoc := Nhansu (id: 1111,ho: ’Iksal’. . . ) /* tạo đối tượng giám đốc*/ Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững VII ODMG Sử dụng tiếp cận theo kiểu HQT CSDL cũ. Tất cả đối tượng là bền vững Mỗi lớp có 1 (hoặc 0) "dân số" Nếu "dân số" tồn tại thị tất cả các đối tượng tự động lưu vào trong nó. Cú pháp : CLASS [ EXTENT ] 67 Phạm Thị Ngọc Diễm OODB
  175. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa "Dân số" và sự bền vững VII ODMG Sử dụng tiếp cận theo kiểu HQT CSDL cũ. Tất cả đối tượng là bền vững Mỗi lớp có 1 (hoặc 0) "dân số" Nếu "dân số" tồn tại thị tất cả các đối tượng tự động lưu vào trong nó. Cú pháp : CLASS [ EXTENT ] Người dùng có thể kết hợp tên bền vững với một vài đối tượng Ví dụ: NAME giamdoc : Nhansu /* khai báo biến bền vững có tên*/ giamdoc := Nhansu (id: 1111,ho: ’Iksal’. . . ) /* tạo đối tượng giám đốc*/ 67 Phạm Thị Ngọc Diễm OODB
  176. Định nghĩa một lớp các đối tượng: - Định nghĩa cấu trúc của các đối tượng, - Định nghĩa các phương thức để thao tác trên các đối tượng. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Phương thức và sự đóng gói I Phương thức (1) Mỗi lớp được kết hợp với các phương thức cho phép: - Truy xuất, - Cập nhật, - Thao tác các đối tượng của lớp (hoặc các trị của kiểu dữ liệu) 68 Phạm Thị Ngọc Diễm OODB
  177. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Phương thức và sự đóng gói I Phương thức (1) Mỗi lớp được kết hợp với các phương thức cho phép: - Truy xuất, - Cập nhật, - Thao tác các đối tượng của lớp (hoặc các trị của kiểu dữ liệu) Định nghĩa một lớp các đối tượng: - Định nghĩa cấu trúc của các đối tượng, - Định nghĩa các phương thức để thao tác trên các đối tượng. 68 Phạm Thị Ngọc Diễm OODB
  178. Giao diện (interface): - tên phương thức, - danh sách các tham số và kiểu của nó, - kiểu trả về nếu có Cài đặt (code): ẩn đối với người sử dụng: - các chỉ thị NN lập trình HĐT ( C++, Java), - các chỉ thị của OODBMS (ngôn ngữ hỏi, lời gọi phương thức chuẩn như tạo, xóa đối tượng), - lời gọi phương thức của các lớp đối tượng của CSDL. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Phương thức và sự đóng gói II Phương thức (2) Định nghĩa một phương thức 69 Phạm Thị Ngọc Diễm OODB
  179. Cài đặt (code): ẩn đối với người sử dụng: - các chỉ thị NN lập trình HĐT ( C++, Java), - các chỉ thị của OODBMS (ngôn ngữ hỏi, lời gọi phương thức chuẩn như tạo, xóa đối tượng), - lời gọi phương thức của các lớp đối tượng của CSDL. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Phương thức và sự đóng gói II Phương thức (2) Định nghĩa một phương thức Giao diện (interface): - tên phương thức, - danh sách các tham số và kiểu của nó, - kiểu trả về nếu có 69 Phạm Thị Ngọc Diễm OODB
  180. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Phương thức và sự đóng gói II Phương thức (2) Định nghĩa một phương thức Giao diện (interface): - tên phương thức, - danh sách các tham số và kiểu của nó, - kiểu trả về nếu có Cài đặt (code): ẩn đối với người sử dụng: - các chỉ thị NN lập trình HĐT ( C++, Java), - các chỉ thị của OODBMS (ngôn ngữ hỏi, lời gọi phương thức chuẩn như tạo, xóa đối tượng), - lời gọi phương thức của các lớp đối tượng của CSDL. 69 Phạm Thị Ngọc Diễm OODB
  181. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Phương thức và sự đóng gói III Phương thức - Ví dụ Class Nguoi { ho : STRING ; ten : STRING ; diachi : STRING ; Void hienthi() ;} ; 70 Phạm Thị Ngọc Diễm OODB
  182. Tạo cho việc tái sử dụng của các lớp được dễ dàng : chỉ cần biết giao diện (interface) Cho phép thay đổi cấu trúc đối tượng, sửa đổi cài đặt của phương thức, thêm phương thức mới mà không cần sửa đổi chương trình ứng dụng, chỉ cần biên dịch lại. Đặc điểm : từ bên ngoài đối tượng, chỉ khai báo (giao diện) của các phương thức là được nhìn thấy (visible) Những thành phần được ẩn: - Cấu trúc đối tượng, - Cài đặt chi tiết của các phương thức. Giới thiệu Giới thiệu OODM và OODBMS HQT CSDL hướng đối tượng Ưu và nhược điểm của OODBMS Ví dụ Các chuẩn Kết luận Mô hình hóa Phương thức và sự đóng gói IV Sự đóng gói Mục tiêu: Ẩn đi các chi tiết cài đặt bên trong của các lớp 71 Phạm Thị Ngọc Diễm OODB