【发布时间】:2014-05-05 06:36:48
【问题描述】:
我正在构建一个应用程序,我从各种社交媒体收集用户个人资料并将它们存储为我的应用程序的一部分。最初我正在考虑使用像 mongoDB 这样的 NoSQL 来存储这些详细信息。但我还需要在哪个社交媒体上存储谁与谁有联系的信息。为了实现这一点,基于图形的数据存储似乎是最合适的。
但我从不同社交媒体获得的数据结构并不一致。因此,我正在考虑仅将电子邮件 ID 存储为图形数据库(neo4j)的一部分,并将所有配置文件数据存储为 mongoDB 的一部分。还有其他建议吗?或者这会影响以后的表现吗?
【问题讨论】:
-
这里的一切很大程度上取决于您的用例和使用模式。无模式存储非常擅长存储来自不同来源的数据,并且在合理范围内甚至可能在同一个“集合”中(在 MongoDB 意义上)。除非您有一个明确的使用模式来定义为什么要引入不同的移动部件,否则您可能在早期阶段过于复杂。如果您真的想为您的应用程序架构提供建议,那么我建议您将其分解为一系列不太广泛的问题。
-
我想使用neo4j的主要原因是为了确保我存储“连接”关系。目前的主要用例是在给定电子邮件 ID 的情况下获取一些个人资料信息。但最终我想根据用户的技能/兴趣等推荐用户个人资料。这时我需要知道人们是如何联系起来的。
标签: java mongodb graph neo4j database