比较特性 | CouchDB | MongoDB |
---|
数据模型 | 它遵循面向文档的模型,数据以 JSON 格式呈现。 | 它遵循面向文档的模型,但数据以 BSON 格式呈现。 |
Interface | CouchDB 使用基于 HTTP/REST 的接口。 它非常直观,设计得很好。 | MongoDB 使用二进制协议和 TCP/IP 上的自定义协议。 |
对象存储 | 在 CouchDB 中,数据库包含文档。 | 在 MongoDB 中,数据库包含集合,而集合包含文档。 |
查询方法 | CouchDB 遵循 Map/Reduce 查询方法。(JavaScript+其他) | MongoDB 遵循 Map/Reduce (JavaScript) 创建集合 + 基于对象的查询语言。 |
复制 | CouchDB 支持带有自定义冲突解决功能的 master-master 复制。 | MongoDB 支持主从复制。 |
并发性 | 它遵循 MVCC(多版本并发控制)。 | 就地更新。 |
偏好 | CouchDB 倾向于可用性。 | MongoDB 倾向于一致性。 |
性能一致性 | CouchDB 比 MongoDB 更安全 | 在 MongoDB 中,数据库包含集合,而集合包含文档。 |
一致性 | CouchDB 最终一致。 | MongoDB 是强一致性的。 |
编写于 | 它用 Erlang 编写。 | 它用 C++ 编写。 |