Bài 2: MongoDB - Điểm mạnh và lợi thế - MongoDB

Đăng bởi: Admin | Lượt xem: 1825 | Chuyên mục: SQL


Bất kỳ cơ sở dữ liệu quan hệ nào (Relation Database) có một Schema Design đặc trưng để chỉ số các bảng dữ liệu và mối quan hệ giữa các bảng dữ liệu đó với nhau. Trong khi đó trong MongoDB không có khái niệm về mối quan hệ.

1.Ưu điểm của mongodb :

  • Schema linh hoạt: Do MongoDB sử dụng lưu trữ dữ liệu dưới dạng Document JSON nên mỗi một collection sẽ các các kích cỡ và các document khác nhau.
  • Cấu trúc đối tượng rõ ràng: Tuy rằng cấu trúc của dữ liệu là linh hoạt nhưng đối tượng của nó được xác định rất rõ ràng.
  • Sử dụng bộ nhớ nội tại, nên truy vấn sẽ rất nhanh.
  • MongoDB rất dễ mở rộng.
  • Không có các join: Điều này cũng góp phần tạo nên tốc độ truy vấn cực nhanh trên mongoDB.
  • MongoDB phù hợp cho các ứng dụng realtime.

2. Nhược điểm của mongodb:

  • Điều đầu tiên phải kể đến ở đây là MongoDB không có các tính chất ràng buộc như trong RDBMS nên khi thao tác với mongoDB thì phải hết sức cẩn thận.
  • MongoDB sử dụng sẽ hao tốn tài nguyên của hệ thống nhiều hơn RDBMS. Nhưng đến thời điểm hiện tại thì vấn đề này không còn là điều lo ngại nữa (Máy giờ trâu bò lắm rồi).

3. Các lợi thế của MongoDB so với RDBMS

  • Ít Schema hơn: MongoDB là một cơ sở dữ liệu dựa trên Document, trong đó một Collection giữ các Document khác nhau. Số trường, nội dung và kích cỡ của Document này có thể khác với Document khác.
  • Cấu trúc của một đối tượng là rõ ràng.
  • Không có các Join phức tạp.
  • Khả năng truy vấn sâu hơn. MongoDB hỗ trợ các truy vấn động trên các Document bởi sử dụng một ngôn ngữ truy vấn dựa trên Document mà mạnh mẽ như SQL.
  • Tuning
  • MongoDB dễ dàng mở rộng.
  • Việc chuyển đổi/ánh xạ của các đối tượng ứng dụng đến các đối tượng cơ sở dữ liệu là không cần thiết.
  • Sử dụng bộ nhớ nội tại để lưu giữ phần công việc, giúp truy cập dữ liệu nhanh hơn.

4. Tại sao nên sử dụng MongoDB

  • Kho lưu định hướng Document: Dữ liệu được lưu trong các tài liệu kiểu JSON
  • Lập chỉ mục trên bất kỳ thuộc tính nào
  • Replication và tính khả dụng cao
  • Tự động Shard
  • Các truy vấn đa dạng
  • Cập nhật nhanh hơn
  • Sự hỗ trợ chuyên nghiệp bởi MongoDB

5. Nên sử dụng MongoDB ở đâu

  • Lượng dữ liệu lớn
  • Quản lý dữ liệu người dùng
  • Phân phối và quản lý nội dung (CM)
  • Data Hub

6. Lời kết

Dựa vào các điều mình đã phân tích ở trên thì mọi người hãy tự đưa ra câu trả lời khi nào thì nên dùng MongoDB nha
Bài tiếp theo: MongoDB - Thiết lập môi trường >>
vncoder logo

Theo dõi VnCoder trên Facebook, để cập nhật những bài viết, tin tức và khoá học mới nhất!