intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Chương 12 : Mô hình dữ liệu và mô hình đối tượng

Chia sẻ: Muay Thai | Ngày: | Loại File: PDF | Số trang:44

134
lượt xem
11
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Mô hình Object được dùng cho hầu hết các thành phần của ứng dụng như class, attributes, operations, relationships, components, và các cấu trúc khác (ngoại trừ dữ liệu) liên quan đến tính hiệu quả của bộ nhớ Đối tượng gì được tạo trong bộ nhớ, chúng giao tiếp nhau như thế nào, mỗi đối...

Chủ đề:
Lưu

Nội dung Text: Chương 12 : Mô hình dữ liệu và mô hình đối tượng

  1. CHƯƠNG 12: 12 Mô hình dữ liệu li 1
  2. Nội dung dung So sánh mô hình dữ liệu và mô hình đối  tượng  Quy tắc nghiệp vụ và tính logic trong mô hình dữ liệu  Trình tự tạo mô hình dữ liệu ◦ Từ việc thiết kế bảng ◦ Từ mô hình đối tượng Phát CSDL hay file DDL  2
  3. Object Object Model và Data Model Mô hình Object được dùng cho hầu hết các  thành phần của ứng dụng như class, attributes, operations, relationships, components, và các cấu trúc khác (ngoại trừ dữ liệu) liên quan đến tính hiệu quả của bộ nhớ ◦ Đối tượng gì được tạo trong bộ nhớ, chúng giao tiếp nhau như thế nào, mỗi đối tượng có nhiệm vụ gì? Data model liên quan nhiều đến tính hiệu quả  của database. 3
  4. So So sánh 2 mô hình 4
  5. So sánh 2 mô hình mô Mô hình object Mô hình data Tập trung vào Chỉ tập trung vào behavior và data data Hỗ trợ tính kế thừa Không hỗ trợ tính kế (inheritance) thừa Hai entity classes có Các bảng của entity thể quan hệ với nhau. class có thể không cần quan hệ với nhau 5
  6. So sánh 2 mô hình mô Mô hình object hay data được phát triển  trước?? ◦ Thường được phát triển đồng thời. Một entity class từ lược đồ class sẽ trở  thành các bảng của database CSDL. Ngược lại, một bảng trong database có thể được hỗ trợ bởi hai hay nhiều class trong ứng dụng. 6
  7. Mối quan hệ giữa 2 mô hình mô Nhiều project, chủ yếu là các project cần  nâng cấp, bắt đầu với một mô hình data có sẵn, có thể reverse engineer mô hình này để phát ra một mô hình object.  Nếu có mô hình object nhưng không có mô hình data, có thể phát tự động mô hình data từ mô hình này. 7
  8. Quy tắc nghiệp vụ - Business rules Quy Nếu muốn thực thi mô hình data, cần phải áp  dụng các quy tắc nghiệp vụ (business rules) vào mô hình. Các quy tắc nghiệp vụ bao gồm: yêu cầu, chính  sách, hướng dẫn cần thiết để hoàn tất giao dịch trong thực tế. Khi áp dụng các quy tắc nghiệp vụ, phải chỉ ra  được: ◦ các giá trị có thể chấp nhận trong các cột (not null, unique, default..) ◦ Các biểu thức điều kiện (check constraint) ◦ Các hành động cần làm khi cập nhật database (trigger bảo toàn tham chiếu) 8
  9. Tính logic trong mô hình dữ liệu Tính Thực tế của hướng đối tượng chỉ ra rằng  nên giữ các business logic trong ứng dụng hơn là trong database  Chỉ có logic nào liên quan đến chính dữ liệu mới nên đưa vào database như: các field, giá trị hợp lệ trong các field, chiều dài field… 9
  10. Tính logic trong mô hình dữ liệu Tính Nhiều quy tắc nghiệp vụ (business rules) có thể  đựơc đưa trực tiếp vào database thông qua constraint.Tuy database là nơi thích hợp cho loại logic này, ứng dụng buộc phải thu thập thông tin từ end user, truyền nó qua lớp business, qua kết nối mạng trước khi dữ liệu được đánh giá. Nếu để logic này ngay tại lớp business thì đôi khi giảm được nghẽn mạng. Tuy nhiên 1 số phần trong ứng dụng hay các ứng  dụng khác, cần dùng cùng 1 constraint thì nên đặt nó trong database để bảo đảm quy tắc này được áp dụng 1 cách thống nhất. 10
  11. Tính logic trong mô hình dữ liệu Tính Một số logic hệ thống có thể đặt ngoài  database trong các stored procedures. Nếu chức năng liên quan đến việc tạo dữ liệu thì nên lập trình nó trong stored procedure có thể nhanh hơn là phải nạp toàn bộ bản ghi vào bộ nhớ rồi để ứng dụng xử lý, và lưu trữ kết quà ngược về lại database. 11
  12. Tính logic trong mô hình dữ liệu Tính Tuy nhiên cũng có những bất lợi khi dùng  stored procedure để thực thi business logic: ◦ Chia business logic ngang qua ít nhất là 2 layer (business logic layer và the database layer). Khi business logic thay đổi, có thể cần cập nhật cả 2 layer ◦ Nếu dùng quá nhiều stored procedures có thể khó di chuyển chúng từ DBMS này sang DBMS khác do cú pháp có thể khác nhau. 12
  13. Tính logic trong mô hình dữ liệu Tính Không dễ quyết định logic nên đặt trong  database hay trong ứng dụng.  Ngay khi quyết định đặt logic trong database, có thể mô hình logic này bằng cách mô hình hoá stored procedures, constraints, và triggers. 13
  14. Tạo mô hình dữ liệu Mô hình Data được xây dựng cả trong  logical view và Component view.  Trong logical view, có thể tạo schema, table, domain và các domain packages.  Trong Component view, mỗi database được mô hình như 1 component với stereotype là 14
  15. Trình tự tạo mô hình data Trình Tạo database 1. 2. Tạo schema ◦ Logical view\Data Modeler\New\Schema ◦ Gán database cho schema Tạo domain package 3.  Logical view\Data Modeler\New\ Domain Package  Gán hệ DBMS cho domain package 15
  16. Trình tự tạo mô hình data Trình Tạo các domain trong domain package 4.  Domain package\Data Modeler\New\Domain Tạo lược đồ mô hình data 5.  Schema\Data Modeler\New\Data Model Diagram Tạo hay thêm bảng vào lược đồ 6.  Tools\Create\Table, nhấp vào cửa sổ lược đồ Tạo mối quan hệ giữa các bảng 7. Tạo view 8. Tạo mô hình object từ mô hình data 9. Phát ra database 10. Giữ database đồng bộ với mô hình data thông 11. qua tính chất Update 16
  17. Bước 1: Tạo Database Ta Rose hỗ trợ 1 số DBMS như sau:  ◦ MS SQL server ◦ IBM DB2 ◦ Oracle 17
  18. Bước 1: Tạo Database Ta Database được mô hình hoá như 1  component. Nó cần có tên riêng biệt và phải được gán vào 1 DBMS xác định.  Để tạo database: ◦ Tại Component view, nhấp phải và chọn lệnh Data Modeler\ New\ Database ◦ Sau khi tạo DB, mở open specification và chọn DBMS thích hợp. 18
  19. Tablespace Tablespace (filegroup) Khi sử dụng DB2, Oracle hay SQL server,  có thể thêm tablespace vào DB  Tablespace là 1 đơn vị lưu trữ logical cho các bảng. ◦ Mỗi tablespace chứa 1 hay nhiều container. ◦ Mỗi container là 1 thiết bị lưu trữ vật lý chẳng hạn như đĩa cứng. Một container được chia thành nhiều đơn vị nhỏ hơn gọi là extent. ◦ Các bảng được phân bổ ngang qua các container trong cùng 1 tablespace 19
  20. Tablespace Tablespace Để tạo tablespace cho database:  Data Modeler\ New \ Tablespace  Với SQL server, thì tablespace còn được gọi là filegroup, container còn được gọi là file.  Mỗi tablespace đều có 1 kích cỡ ban đầu. Ngay khi không gian này được dùng hết, DBMS có thể tự động tăng thêm kích cỡ với độ lớn được đặt sẵn nhưng không thể vượt quá kích cỡ cực đại. 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2