MongoDB là document database: thay vì bẻ dữ liệu thành nhiều bảng, nó lưu cả một "cục" dữ liệu liên quan trong một document (giống một object JSON) nằm trong collection. Bên dưới, document được lưu dạng BSON.
Nên chọn khi:
- Dữ liệu có hình dạng document tự nhiên (một đơn hàng kèm luôn các dòng hàng...).
- Schema thay đổi nhanh, cần linh hoạt.
- Cần scale ngang (chia dữ liệu ra nhiều máy) dễ dàng.
- Thường đọc/ghi trọn cả document một lần.
Không nên chọn khi:
- Dữ liệu quan hệ chặt, cần join phức tạp hay transaction trên nhiều bảng.
- Cần ràng buộc dữ liệu mạnh (lúc đó PostgreSQL/RDBMS hợp hơn).
Bẫy thường gặp: đừng chọn MongoDB chỉ để né việc thiết kế schema — sớm muộn vẫn phải thiết kế.