14/08/2018, 11:19

Mô hình hóa dữ liệu trong MongoDB

Dữ liệu trong MongoDB có một Schema linh động. Các Document trong cùng Collection không cần thiết phải có cùng tập hợp các trường hoặc cấu trúc, và các trường chung trong các Document của Collection có thể giữ các kiểu dữ liệu khác nhau. Một số chú ý trong khi thiết kế Schema trong MongoDB ...

Dữ liệu trong MongoDB có một Schema linh động. Các Document trong cùng Collection không cần thiết phải có cùng tập hợp các trường hoặc cấu trúc, và các trường chung trong các Document của Collection có thể giữ các kiểu dữ liệu khác nhau.

Một số chú ý trong khi thiết kế Schema trong MongoDB

Ví dụ

Giả sử, một khách hàng cần một thiết kế cơ sở dữ liệu cho trang blog của anh ta, và dưới đây, bạn xem các điểm khác nhau giữa thiết kế Schema của RDBMS và MongoDB. Website này có các yêu cầu sau:

Trong thiết kế Schema của RDBMS cho các yêu cầu trên sẽ có tối thiểu ba bảng dữ liệu:

RDBMS Schema Design

Trong khi trong thiết kế Schema của MongoDB sẽ chỉ có một Collection Post có cấu trúc như sau:

{
   _id: POST_ID
   title: TITLE_OF_POST, 
   description: POST_DESCRIPTION,
   by: POST_BY,
   url: URL_OF_POST,
   tags: [TAG1, TAG2, TAG3],
   likes: TOTAL_LIKES, 
   comments: [	
      {
         user:'COMMENT_BY',
         message: TEXT,
         dateCreated: DATE_TIME,
         like: LIKES 
      },
      {
         user:'COMMENT_BY',
         message: TEXT,
         dateCreated: DATE_TIME,
         like: LIKES
      }
   ]
}

Vì thế trong khi hiển thị dữ liệu, trong RDBMS bạn cần kết hợp ba bảng và trong MongoDB sẽ chỉ cần hiển thị từ một Collection.

Follow fanpage của team https://www.facebook.com/vietjackteam/ hoặc facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.

Các bài học lập trình MongoDB phổ biến khác tại code24h:

0