Xây dựng mô hình dữ liệu

Một phần của tài liệu PHÁT TRIỂN PHẦN mềm THEO HƯỚNG CHIA NHỎ PHẦN DỊCH vụ (MICROSERVICES) và PHẦN GIAO DIỆN (MICRO FRONTENDS) (Trang 59 - 61)

Để đảm bảo nguyên tắc triển khai độc lập và giảm thiểu sự phụ thuộc giữa các thành phần, mỗi microservice trong CEMS sẽ sử dụng một cơ sở dữ liệu riêng biệt. Dựa vào phân vùng nghiệp vụ của bài toán như mô tả ở mục 3.5.1, ta xác định được bốn lược đồ cơ sở dữ liệu chính dành cho các đối tượng gồm người dùng (user-db), khách hàng (customer-db), thiết bị (equipment-db) và tài sản (asset-db). Đối với tác vụ kết xuất báo cáo, dữ liệu sẽ được tổng hợp từ thông tin của khách hàng và tài sản, và được lưu riêng ở vùng dữ liệu dành cho báo cáo (reporting-db). Mô hình tổ chức dữ liệu cho hệ thống được thể hiện trong hình 3.6.

Sau khi có được mô hình cơ sở dữ liệu chung ở trên, chúng ta cần xây dựng cơ sở dữ liệu cho từng microservice. Để thực hiện điều này, trước hết chúng ta áp dụng kỹ thuật thiết kế hướng miền nhằm xác định các lớp thực thể chứa các thông tin cần quản lý liên quan đến từng miền nghiệp vụ của hệ thống, sau đó chúng ta cần xác định mối quan hệ giữa các thực thể dựa theo các quy tắc nghiệp vụ của bài toán để đưa ra được sơ đồ lớp cho các lớp thực thể này. Sơ đồ trong hình 3.7 minh họa mối quan hệ giữa các lớp thực thể trong module user-service.

49

Hình 3.6. Mô hình cơ sở dữ liệu của CEMS

Hình 3.7. Mối quan hệ giữa các lớp thực thể trong module user-service

Theo sơ đồ lớp trong hình 3.7, module user-service có bốn lớp thực thể tham gia bao gồm lớp vị trí (position) lưu thông tin về vị trí, chức danh người dùng; lớp nhóm quyền (group role) lưu thông tin về nhóm quyền, lớp phòng ban (department) lưu thông tin về các phòng ban và lớp người sử dụng ứng dụng (app user) lưu các thông tin liên quan đến người dùng (họ tên, địa chỉ, mật khẩu…). Các lớp thực thể này sẽ được ánh xạ với từng bảng trong cơ sở dữ liệu thông qua kỹ thuật ORM để chuyển đổi mô hình từ các lớp Java sang từng bảng tương ứng trong lược đồ cơ sở dữ liệu. Việc xây dựng cơ sở dữ liệu cho các microservice khác được thực hiện theo cách tương tự.

50

Một phần của tài liệu PHÁT TRIỂN PHẦN mềm THEO HƯỚNG CHIA NHỎ PHẦN DỊCH vụ (MICROSERVICES) và PHẦN GIAO DIỆN (MICRO FRONTENDS) (Trang 59 - 61)