mongodb - 适用于 Google Reader 等应用的 NoSQL 架构

标签 mongodb couchdb cassandra redis riak

对于像 Google Reader(一对一副本)这样的应用程序,您会使用哪种 NoSQL 架构?

我考虑了 MongoDB、Cassandra、CouchDB、Redis、HBase 和 Riak。

最佳答案

简单的答案,使用您最熟悉的答案。

更复杂的答案实际上在于 Google 阅读器可以做什么的细节。您可能需要的一项功能是多个索引。

每个 RSS 条目都将有一个唯一的键、一个用户、一个 ts、一个阅读标志和一些类别。在处理面向文档或键值数据库时,通常很容易获得键。但是您真正要运行的第一个查询是什么?按用户、ts、阅读列出。

好吧,这将需要一个二级索引。 AFAIK riakredis 根本不支持这一点。 CouchDBCassandra 似乎有一些变通方法( View ),但仍然不容易。 MongoDB 支持二级索引“out of the box”。

因此,您马上就可以轻松地让它与 MongoDB 一起工作。

Mongo 也有一系列 atomic operations这使得异步更新数据变得更加容易。

关于mongodb - 适用于 Google Reader 等应用的 NoSQL 架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4748827/

相关文章:

node.js - Angular 2 Firebase 应用程序中的 net::ERR_CONNECTION_CLOSED

MongoDB 我们如何获取所有当前打开的游标和它们正在运行的查询?

javascript - jQuery CouchDB - 用于 View 的过滤键

cassandra - OldNetworkTopologyStrategy 和 NetworkTopologyStrategy

hadoop - 运行配置单元脚本 "am_stats_analyzer_163"cassandra 时出现 WSO2 BAM 错误

cassandra - 同步 SELECT + INSERT 与 INSERT 之间的性能差异......如果 CQL 中不存在?

python - 如何从 python 中的 mongodb 的 pymongo 查询中获取单个值?

javascript - 回调、错误捕获和 MongoDB 的问题

couchdb - 使用 couchDB 处理多个数据库的最佳实践

MongoDB 或 CouchDB 作为移动设备的数据库?