Database MongoDB管理模型用户和模型镜像关系,或者其他db替代方案(如neo4j)来处理此问题

Database MongoDB管理模型用户和模型镜像关系,或者其他db替代方案(如neo4j)来处理此问题,database,mongodb,neo4j,Database,Mongodb,Neo4j,我目前使用MongoDB作为数据库,遇到了一个与架构相关的问题。我有模型用户和模型图像,用户可以喜欢和不喜欢图像。我希望一个图像能够得到1000个喜欢,如果不是100000个喜欢,因此用户和图像的关系需要有效地监控和更新 仅使用mongodb,我就可以进行以下设置,但我认为这会在1000次点击后导致问题 图像模型: -名字 -网址 -likeCount(编号) -喜欢(跟踪喜欢的用户的数组) 我不认为这是非常有效或可扩展的,所以我想使用neo4j作为另一个数据库层来管理大型关系。我不确定添加另一

我目前使用MongoDB作为数据库,遇到了一个与架构相关的问题。我有模型用户和模型图像,用户可以喜欢和不喜欢图像。我希望一个图像能够得到1000个喜欢,如果不是100000个喜欢,因此用户和图像的关系需要有效地监控和更新

仅使用mongodb,我就可以进行以下设置,但我认为这会在1000次点击后导致问题

图像模型: -名字 -网址 -likeCount(编号) -喜欢(跟踪喜欢的用户的数组)


我不认为这是非常有效或可扩展的,所以我想使用neo4j作为另一个数据库层来管理大型关系。我不确定添加另一个db是否是解决此问题的最佳方法,我希望在这里展开讨论并获得有关如何解决此缩放问题的反馈

我将试一试:使用图像模型:名称、url、createduser:(_idof User Model中的用户),likeduser:[array of ObjectId],dislikeduser:[array of ObjectId]如果用户喜欢该图像,则将用户的“_id”添加到likeduser和viceversa,这样获得likeduser数组大小或dislikeduser arraysize u将获得计数。