开发者

NoSQL architecture for app like Google Reader

Wha开发者_开发问答t NoSQL architecture would you use for application like Google Reader (one to one copy)?

I consider MongoDB, Cassandra, CouchDB, Redis, HBase and Riak.


Easy answer, use the one you're most comfortable with.

The more complex answer really lies in the details of what Google Reader can do. One feature that you'll probably want is multiple indexes.

Each RSS entry is going to have a unique key, a user, a ts, a read flag and some categories. When dealing with document-oriented or key-value databases, it's generally easy to get the key. But what's the first query you're really going to run? List by user, ts, read.

Well, that's going to need a secondary index. AFAIK riak and redis don't support this at all. CouchDB and Cassandra seem to have some workarounds (views), but it's still not easy. MongoDB supports secondary indexes "out of the box".

So right off the bat, you're making it easy to get it working with MongoDB.

Mongo also has a series of atomic operations that makes is easier to update data asynchronously.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜