构建一个Twitter用户数据库

时间:2013-05-28 14:26:59

标签: twitter graph relational-database neo4j

我正在构建一个简单的twitter图表,我正在与团队的其他成员讨论如何实现它。

我认为由于性能和简单性,A选项是最好的,但是由于缺乏平台经验,其他成员(项目负责人特别喜欢C)并不相信。

我从未在生产应用程序中使用过图形,所以当PL开始将它与C选项进行比较时,我没有强大的参数。

所以我问你根据自己的经验选择哪个选项?

元素:

  • Twitterusers
  • 列表
  • 兴趣

A)neo4j图

节点:

  • twitteruser
  • 列表
  • 兴趣

关系:

  • 跟随(user1,user2)
  • member_of(用户,列表)
  • interested_in(用户,兴趣)

B)相同的图形,但在较小的图形中分割以提高性能。

C)简单的neo4j图和用于查询数据的关系数据库。

.graph:

节点:

  • twitteruser

关系:

  • 相似度(user1,user2)

.relational db:A的节点将转换为表格和 关系将通过多对多的关键来完成。

1 个答案:

答案 0 :(得分:5)

根据您的描述,我个人看不出选项B和C的任何原因。您描述的场景看起来非常适合作为Neo4j的图形数据库。

如果选择选项C,则会有很多代码只在两个数据库之间进行id转换和同步。你最好有充分的理由使用这样的两家商店。