CouchDB與MongoDB比較
CouchDB與MongoDB在架構和用途上,有很多相似的地方,詳細的對比如下表中所示 -
CouchDB vs. MongoDB
特徵比較
CouchDB
MongoDB
數據模型
它遵循面向文檔的模型,數據以JSON格式呈現。
它遵循面向文檔的模型,但數據以BSON格式呈現。
接口
CouchDB使用基於HTTP/REST的接口。它非常直觀,設計非常好。
MongoDB在TCP/IP上使用二進制協議和自定義協議。
對象存儲
在CouchDB中,數據庫包含文檔。
在MongoDB中,數據庫包含集合,而集合包含文檔。
查詢方法
CouchDB遵循Map/Reduce查詢方法(JavaScript+其他)
MongoDB遵循Map/Reduce(JavaScript)創建集合+基於對象的查詢語言。
複製
CouchDB支持使用自定義衝突解析功能的主-主複製。
MongoDB支持主從複製。
併發
它遵循MVCC(多版本併發控制)
就地更新
偏向
CouchDB優先考慮可用性
MongoDB優先考慮一致性
性能一致性
在CouchDB中比MongoDB更安全
在MongoDB中數據庫包含集合,而集合包含文檔。
一致性
CouchDB最終是一致的。
MongoDB也是一致的。
編寫語言
使用Erlang語言編寫
使用C++語言編寫