3

以 Twitter 的数据模型为例:

用户 A 关注了 N 个其他用户,每个用户发布了 N 个不同的帖子。帖子带有时间戳。

是否有支持有效读取用户 A 关注的用户的最新 N 个帖子的数据存储或图形数据库?

帖子最好按排序顺序存储(如 Cassandra ColumnFamily 或 Redis ZSET)。

此外,跨不同机器分片数据的能力也很关键。

4

2 回答 2

1

您的一个选择可能是... RDF 数据库(AKA 三重存储/四重存储)并尝试使用SPARQL来查询图并从您的数据中检索子图。另请参阅SPARQL 示例

可以扩展到数十亿个三元组或四元组的是4store,它是用 C 语言编写的,允许跨段进行数据分片,它充分利用了商品集群或多核架构。有大量的客户端库可以与它进行交互,包括 Java、perl、Python、...

于 2011-07-06T22:41:35.290 回答
1

看看Neo4J,它应该完全符合您的需求。不过,一个建议是使用它的REST 接口,因为它让您可以自由选择您的武器 uhm 编程语言,并抽象出直接使用 Java 绑定的许多复杂性

于 2011-07-06T22:49:31.640 回答