Neo4j + Redis?是好是坏?

时间:2014-05-28 05:29:11

标签: database redis neo4j

我制作了具有社交网络功能的音乐应用。我希望用Neo4j和Redis为我的数据库供电。在Neo4j中,我将在redis中存储用户信息和所有其他信息(发布,评论等)。有没有人对此有任何建议或见解?

3 个答案:

答案 0 :(得分:4)

简短回答:这取决于。

更长的答案:

我假设您刚刚开始使用该应用,并希望获得快速反馈,如果这是您想投资的事情(时间/金钱)。

如果你想运行像&#34这样的查询,那些用户会查看相同的歌曲"你需要将这些数据放入Neo4J。通常,您在那里连接的数据越多,您可以回答的问题就越有趣。所以我错误地将数据放入Neo4j。此外,仅查询一个数据库比通过多个数据库聚合数据更容易实现。

如果您获得足够多的用户,他们生成的数据量开始影响Neo4j,您可以将实际的评论文本或帖子发布到redis中,并通过Neo4j的ID引用它。但到那时你已经知道它值得做,这是一个相当可管理的重构和数据迁移。

答案 1 :(得分:2)

Neo4j是一个图形数据库。但是它不支持分片(水平分区)。使用Neo4j的好处是,您可以使用Neo4j查询语言轻松存储图形数据结构并运行图形算法。这可能对分析某些社交网络属性很有用。不好的是,因为Neo4j不支持分片,所以数据库的容量仅限于单个节点。当数据大小增加时,其性能可能会受到影响。

Redis对于缓存数据总是很有用,这可能是一个不错的选择。

答案 2 :(得分:0)

恕我直言,我会尝试将所有内容存储在neo4j中。