Cơ sở dữ liệu NoSQL dạng document: MongoDB vs CouchDB
TIL
770
White

Lưu Hoàng viết ngày 24/09/2018

Cơ sở dữ liệu NoSQL dạng document: MongoDB vs CouchDB

Giống nhau:

  • Cả hai đều là cơ sở dữ liệu NoSQL, lưu trữ dữ liệu dưới dạng các document JSON.

Khác nhau:

cap

Cả hai đều cung cấp khả năng vượt qua lỗi partition (lỗi gián đoạn đường mạng vật lý giữa các replica). MongoDB cung cấp tính nhất quán (consistency), trong khi CouchDB ưu tiên tính sẵn sàng (availability).

  • Mô hình replication của MongoDB: các node lưu trữ các tập dữ liệu giống nhau, gọi là replica set. Một node sẽ đóng vai trò là node chính phục vụ thao tác ghi, đọc. Các node còn lại chỉ phục vụ thao tác đọc. Replica set cung cấp tính nhất quán chặt.
  • CouchDB sử dụng mô hình Eventual consistency: client có thể ghi dữ liệu lên một node mà không cần đợi các node khác đồng ý. Thay đổi sau đó sẽ được gửi đến các node còn lại và đến cuối cùng thì dữ liệu giữa các node sẽ được đồng bộ.

Sử dụng MongoDB khi ứng dụng yêu cầu tính nhất quán chặt, mọi client đều nhìn thấy chung một view nhất quán của dữ liệu (ví dụ ứng dụng tài chính, thương mại điện tử).

Dùng CouchDB khi ứng dụng yêu cầu tính sẵn sàng cao, cho phép client quan sát dữ liệu cũ (out of date) (ví dụ như ứng dụng mạng xã hội).

Truy vấn:

  • MongoDB: cho phép các câu truy vấn động, ngôn ngữ truy vấn khá giống SQL (điểm này thì MongoDB ngon hơn).
  • CouchDB: phải định nghĩa các view là các hàm Map-Reduce, sử dụng các view đó để lấy dữ liệu.

Tham khảo: MongoDB vs CouchDB

LuuHoang 24-09-2018

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Lưu Hoàng

1 bài viết.
0 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Bài viết liên quan
White
0 5
fCC: Technical Documentation Page note So I have finished the HTML part of this exercise and I want to come here to lament about the lengthy HTML ...
HungHayHo viết hơn 2 năm trước
0 5
White
4 0
I used Spring boot, Hibernate few times back then at University, I'v started using it again recently. In this (Link), I want to check how Spring J...
Rey viết gần 2 năm trước
4 0
White
24 1
Toán tử XOR có tính chất: + A XOR A = 0 + 0 XOR A = A Với tính chất này, có thể cài đặt bài toán sau với độ phức tạp O(N) về runtime, và với O(1)...
kiennt viết 4 năm trước
24 1
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
1 bài viết.
0 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!