问题描述
- 多用户系统的数据库(MongoDB)设计
-
各位大神好,现在公司需要做这么一个平台,这个平台是提供给个人开发者的,个人开发者可以注册登陆到这个平台,登陆后,可以自己创建集合,通过我们提供的公有rest API,对自己创建的集合 进行增删改查。创建自定义集合的数量不受限。
我们现在的思路是:创建2个集合,一个集合保存用户自定义集合的名称,字段,以及字段类型等等信息,另一个集合存储自定义集合的数据。这种思路的问题是,单集合数据量过大,如果有成千上万的开发者,每个开发者都创建多个自定义集合,这个数据量太多了。
另一种思路是:用户的每个自定义集合,都单独创建一个集合。这种思路的问题是,成千上万的开发者,如果每个开发者都创建多个集合,这样,数据库里面的 集合数目又太多了。gg
有没有人有这方面的设计经验? 提前谢谢各位大神。
解决方案
你这个不叫多用户,叫多租户,自己google,Multi-tenant MongoDB,有很多解决方案
解决方案二:
这样写不知道你能不能明白。。。如果你会基本的查询应该想想就明白了。。。
users (hash)
userid:1
roleA : 1 (set)
add , edit , del
时间: 2024-12-23 02:18:30