我想建立一个社交网络(例如,人们可以将其他人添加为好友),我认为图形数据库比传统数据库更适合此类项目。我希望在边缘和节点上存储属性,它们可以是JSON格式,但如果数据库不理解JSON,也无所谓。
ArangoDB还可以存储文档,而Neo4J仅仅是一个图形数据库。
我希望有一个用户节点,并且对于每个人可能有两个边缘关联的用户节点。
用户-[用户名]->人
用户-[ID]->人
并且需要在边缘上建立索引。我不想使用不同的数据库,因此最好能够在数据库中存储图像(字节数组),甚至可以针对每个图像/视频存储不同大小。还应该将帖子等内容存储在数据库中。
据我了解,Neo4j支持更多独立于制造商的查询语言,但我认为学习制造商标准比较容易且更好。您有哪些关于哪种数据库管理系统更适合的建议? 我将使用Java(和一些Scala)编写代码。