你会如何与MongoDB进行多对多的关联?
例如; 假设您有一个Users表和一个Roles表.用户有很多角色,角色有很多用户.在SQL中,您将创建一个UserRoles表.
Users:
Id
Name
Roles:
Id
Name
UserRoles:
UserId
RoleId
Run Code Online (Sandbox Code Playgroud)
MongoDB中如何处理相同类型的关系?
我有一个MSSQL数据库,我正在考虑移植到CouchDB或MongoDB.我在SQL数据库中有多对多的关系,它在外部参照表中有数十万行,对应于关系两侧表中的数万行.CouchDB和/或MongoDB是否能够处理这些数据,以及为性能查询格式化相关文档的最佳方法是什么?非常感谢.
我已经看过很多关于如何与MongoDB建立多对多关系的帖子,但没有一个提到规模.例如这些帖子:
我可以通过这种设置看到的问题是MongoDB的16MB文档限制.说我有users,groups和posts.posts有一个相关的group和许多user可以喜欢它的s.A中group有很多posts,很多user都可以遵循它.A user可以有许多喜欢post的,可以跟随很多groups.如果我用关系数据库构建它,我会这样设置:
user:
user_id
username
post:
post_id
group_id
message
group:
group_id
name
post_likes:
post_id
liked_user_id
group_followers:
group_id
follower_user_id
Run Code Online (Sandbox Code Playgroud)
从理论上讲,a group可以有一个极小数量的posts和users,a post可以拥有无限数量的喜欢users,并且如果在SQL查询中正确完成分页,则user可以拥有无限数量的喜欢posts和groups .
如何设置MongoDB的模式以便实现这种规模?