MongoDB là một cơ sở dữ liệu phân tán dạng tài liệu, có tính chất chung và có thể đặt ở giữa cơ sở dữ liệu quan hệ và cơ sở dữ liệu không quan hệ (NoSQL). Nó là một trong những cơ sở dữ liệu không quan hệ phong phú tính năng nhất và giống như cơ sở dữ liệu quan hệ nhất trong số cơ sở dữ liệu không quan hệ.
Một ví dụ về một tài liệu MongoDB
{
"_id": "5cf0029caff5056591b0ce7d",
"firstname": "Jane",
"lastname": "Wu",
"address": {
"street": "1 Circle Rd",
"city": "Los Angeles",
"state": "CA",
"zip": "90404"
},
"hobbies": ["lướt sóng", "lập trình"]
}
Không có gì đặc biệt, chỉ là một mẩu dữ liệu JSON. Dữ liệu tài liệu được lưu trữ trong MongoDB tương tự như dữ liệu JSON này. Do việc lưu trữ dữ liệu JSON, định dạng dữ liệu được lưu trữ trong MongoDB rất linh hoạt. Khác với MySQL, mà phải có cấu trúc bảng cố định, điều này có nghĩa là bạn có thể thêm hoặc xóa trường bất kỳ khi nào, và tốc độ cũng rất nhanh.
Gợi ý: Nếu doanh nghiệp của bạn không có yêu cầu cao về giao dịch phức tạp, kết hợp và tính nhất quán dữ liệu, và bạn đơn giản chỉ muốn đọc và ghi dữ liệu nhanh, đa nhiệm, định dạng lưu trữ linh hoạt và tự do, và không cần định nghĩa trước cấu trúc bảng, MongoDB là sự lựa chọn tốt.
Đặc điểm của MongoDB
Hiệu suất cao
MongoDB cung cấp tính năng lưu trữ dữ liệu hiệu suất cao. Cụ thể,
- Sử dụng mô hình dữ liệu nhúng có thể giảm thiểu các hoạt động I/O của hệ thống cơ sở dữ liệu.
- Nó hỗ trợ chỉ mục, do đó hiệu quả truy vấn rất cao và các trường được chỉ mục có thể là các trường của tài liệu nhúng hoặc khóa của mảng.
Ngôn ngữ truy vấn phong phú
MongoDB hỗ trợ một bộ ngôn ngữ truy vấn phong phú để đáp ứng các kịch bản truy vấn kinh doanh khác nhau.
Hỗ trợ cho truy vấn không gian địa lý
Đối với doanh nghiệp O2O và doanh nghiệp liên quan đến vị trí, cần thường xuyên thực hiện các truy vấn không gian địa lý, chẳng hạn như truy vấn cửa hàng gần đây, người gần đây, hoặc xác định xem bạn có ở trong khu thương mại hay không. Tất cả đều yêu cầu hỗ trợ truy vấn không gian địa lý.
Khả năng có sẵn cao
Tập sao lưu của MongoDB cung cấp:
- Tự động chuyển đổi khi có lỗi
- Dữ liệu dự phòng
Một tập sao lưu là một nhóm các phiên bản mongod duy trì cùng một bộ dữ liệu, cung cấp dữ liệu dự phòng và hỗ trợ có sẵn cao.
Khả năng mở rộng theo chiều ngang
MongoDB hỗ trợ mở rộng theo chiều ngang. Bằng cách sử dụng phân đoạn, dữ liệu được phân phối trên một nhóm máy chủ.