couchdb - 哪个是最适合 RDBMS 背景人员的 Key-Value Store?

标签 couchdb mongodb cassandra key-value hbase

在所有键值存储中是否有明显的赢家? Cassandra、MongoDB、CouchDB?他们都遵循一些中央指导方针吗?或者他们在定义自己的 API 时都有自己的发言权。

我在问这个问题,尤其是从刚接触键值存储的 RDBMS 技术人员的角度来看。我们应该遵循哪一个才能最好地掌握对该领域的理解/使用?

我们从他们的理论中了解 RDMS,即所有可用的数据库(Oracle、SQL Server 等)都将拥有所有工件,例如表、索引、外键等。唯一的区别是效率、安全性、功能。

我如何了解这些以文档为中心的数据库的普遍理论,并知道所有这些数据库(Mongo、Couch 等)将拥有的最小工件是什么?

最佳答案

我在 MongoDB 上工作,所以我偏向于这种方式,但我认为这是您习惯使用 RDBMS(如动态查询和二级索引)以及键的性能和可扩展性的一个很好的组合-值(value)存储。

Cassandra 有一个很好的分布式模型,但 afaik 不支持二级索引。 Mongo 和 Couch 支持的文档数据模型也比 Cassandra 使用的表格模型更复杂。

Mongo 和 Couch 之间的一大区别是查询的构造方式。 Couch 使用了很酷的 map/reduce 机制,但您的查询必须提前定义。 Mongo 使用更传统的动态查询模型,它更像您在 RDBMS 中所习惯的。

关于couchdb - 哪个是最适合 RDBMS 背景人员的 Key-Value Store?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1500371/

相关文章:

javascript - WHERE OR 查询 - CouchDB

view - 需要一个 CouchDB 技巧来按日期排序并按组过滤

mongodb - 在 mongodb 中使用 pymongo 进行更新操作后,如何检索修改后的文档?

java - 使用嵌入式 Cassandra 加速 Spring MockMvc 集成测试

performance - 在 Postgres 或 CouchDB 中进行全文搜索?

database - 清理 couchdb 并重新启动

mongodb - 无法从另一个容器连接到 mongodb docker 容器

mongodb - 如何获得总和的总和拆分,这也是mongoDB中项目的总和

cassandra - Cassandra 中同一主键的重复行/列

amazon-ec2 - Cassandra 集群许多小节点与较少的大节点