MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Azure Table Vs MongoDB trên Azure

Bộ nhớ Bảng là một tính năng lưu trữ cốt lõi của Windows Azure, được thiết kế để có thể mở rộng ( 100TB 200TB 500TB cho mỗi tài khoản), bền (được sao chép gấp ba lần trong trung tâm dữ liệu, được nhân bản theo địa lý tùy chọn sang một trung tâm dữ liệu khác) và không có phạm vi (mỗi hàng có thể chứa bất kỳ thuộc tính nào bạn muốn). Một hàng được định vị bằng phím phân vùng + phím hàng, cung cấp tra cứu rất nhanh. Tất cả quyền truy cập của Table Storage đều thông qua API REST được xác định rõ ràng, có thể sử dụng thông qua bất kỳ ngôn ngữ nào (với SDK, được xây dựng trên các API REST, đã có sẵn cho .NET, PHP, Java, Python &Ruby).

MongoDB là một cơ sở dữ liệu hướng tài liệu. Để chạy nó trong Azure, bạn cần cài đặt MongoDB trên web / vai trò công nhân hoặc Máy ảo, trỏ nó đến ổ đĩa đám mây (do đó cung cấp ký tự ổ đĩa) hoặc đĩa đính kèm (đối với Máy ảo Windows / Linux), tùy chọn bật tính năng ghi nhật ký (mà tôi muốn giới thiệu), và tùy chọn xác định một điểm cuối bên ngoài để bạn sử dụng (hoặc truy cập nó qua mạng ảo). Nhân tiện, Cloud Drive / đĩa đính kèm thực sự được lưu trữ trong Azure Blob, mang lại cho bạn độ bền và khả năng nhân bản địa lý tương tự như Azure Tables.

Khi so sánh cả hai, hãy nhớ rằng Table Storage là Storage-as-a-Service:bạn chỉ cần truy cập vào một điểm cuối REST nổi tiếng. Với MongoDB, bạn chịu trách nhiệm duy trì cơ sở dữ liệu (ví dụ:bất cứ khi nào MongoDB Inc (trước đây là 10gen) đưa ra phiên bản MongoDB mới, bạn sẽ cần cập nhật máy chủ của mình cho phù hợp).

Về phiên bản alpha của MongoDB Inc được jtoberon chỉ ra:Nếu bạn xem kỹ nó, bạn sẽ thấy một vài điều chính:

  • Thiết lập dành cho phiên bản mongodb Độc lập, không có tập hợp bản sao hoặc phân đoạn. Về bộ bản sao, bạn vẫn nhận được một số lợi ích khi sử dụng phiên bản Độc lập, do cách hoạt động của bộ lưu trữ Blob.
  • Để cung cấp tính khả dụng cao, bạn có thể chạy với nhiều phiên bản. Trong trường hợp này, chỉ một phiên bản phục vụ cơ sở dữ liệu và một phiên bản là "chế độ chờ ấm" khởi chạy quy trình mongod ngay khi phiên bản kia không thành công (để khởi động lại bảo trì, lỗi phần cứng, v.v.).

Trong khi trình bao bọc Windows Azure của 10gen vẫn được coi là 'alpha', mongod.exe thì không. Bạn có thể khởi chạy exe mongod giống như khi khởi chạy bất kỳ exe Windows nào khác. Đó chỉ là mã quản lý xung quanh việc khởi chạy và đó là những gì triển khai alpa đang thể hiện.

EDIT 2011-12-8:Đây không còn ở trạng thái alpha. Bạn có thể tải xuống dự án MongoDB + Windows Azure mới nhất tại đây, dự án này cung cấp hỗ trợ thiết lập bản sao.

Đối với hiệu suất, tôi nghĩ bạn sẽ cần thực hiện một số đo điểm chuẩn. Đã nói rằng, hãy xem xét những điều sau:

  • Khi truy cập Table Storage hoặc MongoDB từ Vai trò web, bạn vẫn đang tiếp cận với hệ thống Windows Azure Storage.
  • MongoDB sử dụng nhiều bộ nhớ cho bộ nhớ cache của riêng nó. Vì lý do này, rất nhiều hệ thống MongoDB quy mô cao được triển khai với kích thước phiên bản lớn hơn. Đối với quyền truy cập Bộ nhớ trong bảng, bạn sẽ không phải cân nhắc về kích thước bộ nhớ giống nhau.

CHỈNH SỬA ngày 7 tháng 4 năm 2015 Nếu bạn muốn sử dụng cơ sở dữ liệu dựa trên tài liệu dưới dạng dịch vụ, Azure hiện cung cấp DocumentDB.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Trả về kết quả dưới dạng Chỉ một mảng Giá trị

  2. Sao lưu cơ sở dữ liệu MongoDB bằng mongodump

  3. MongoDB $ reverseArray

  4. xác thực mongodb với chuỗi kết nối

  5. Cách chuyển chế độ xem MongoDB thành Bộ sưu tập