我正在构建一个应用程序,我从各种社交媒体收集用户配置文件并将其存储为我的应用程序的一部分。最初我在考虑使用像mongoDB这样的NoSQL来存储这些细节。但我还需要存储与哪些社交媒体相关联的信息。为实现这一目标,基于图形的数据存储似乎是最合适的。
但是我从不同社交媒体获得的数据结构并不一致。因此,我考虑将电子邮件ID作为图形数据库(neo4j)的一部分存储,并将所有配置文件数据存储为mongoDB的一部分。还有其他任何建议,或者这会阻碍以后的表现吗?
答案 0 :(得分:0)
我认为你不应该使用电子邮件地址作为主键,如果你发现同一个用户使用了2个不同的电子邮件地址怎么办?最好总是有一个合成密钥,您可以映射多个电子邮件地址。
自从我尝试使用Neo4j已经超过2年了,我感觉不值得付出努力,我们花了更多的时间来尝试让GC在Neo4j上运行,而不是解决我们的业务问题。您不能对数据进行分区(即分片),只有扩展的方法是拥有一个主从和多个读从。