对于有 RDBMS 背景的人来说,哪种键值存储最合适?

发布于 2024-08-06 02:26:35 字数 320 浏览 6 评论 0原文

所有键值存储中是否有一个明显的赢家?卡桑德拉、MongoDB、CouchDB?它们都遵循一些中心准则吗?或者他们在定义 API 时都有自己的发言权。

我问这个问题,特别是从一个对键值存储不熟悉的 RDBMS 技术人员的角度来看。我们应该遵循哪一个才能最好地掌握该领域的理解/用法?

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

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

Is there a distinct winner among all the key-value stores? Cassandra, MongoDB, CouchDB? and do they all follow some central guidelines? or they all have their own say in defining their APIs.

I'm asking this question, especially from a perspective of a RDBMS skilled person who is new to key-value stores. Which one should we follow to best grasp the understanding/usage of this field?

We know about the RDMS from their theories that all available DBs (Oracle, SQL Server, ..) will have all the artifacts e.g. Tables, Indexes, Foreign keys etc. The only difference in these is the efficiency, security, features.

How can I know about the universal theory of these document-centered Databases and know what are the minimal artifacts that all these DBs (Mongo, Couch etc.) will have?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

太阳男子 2024-08-13 02:26:35

我从事 MongoDB 工作,所以我有这样的偏见,但我认为它很好地结合了 RDBMS 的功能(例如动态查询和二级索引)以及键值存储的性能和可扩展性。

Cassandra 有一个很好的分布式模型,但据我所知不支持二级索引。 Mongo 和 Couch 支持的文档数据模型还比 Cassandra 使用的表格模型稍微复杂一些。

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

I work on MongoDB so I'm biased that way, but I think it is a nice combination of the things you're used to with an RDBMS (like dynamic queries and secondary indexes) and the performance and scalability of a key-value store.

Cassandra has a nice distributed model but afaik doesn't support secondary indexes. The document data model support by Mongo and Couch also allows for a little bit more complexity than the tabular model Cassandra uses.

One of the big differences between Mongo and Couch is the way queries are constructed. Couch uses a cool map/reduce mechanism, but your queries must be defined in advance. Mongo uses a more traditional dynamic query model that is more like what you're used to in an RDBMS.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文