Mongodb 更好的mongo db模式来存储用户相关信息

Mongodb 更好的mongo db模式来存储用户相关信息,mongodb,nosql,Mongodb,Nosql,假设我必须在mongoDB中存储一些与特定用户帐户相关的数据(比如“状态”) 执行此操作的更好选项是什么:集合状态: 1) {id:-这在用户集合中是相同的,[状态数据]} 2) {id:-状态的某个唯一id,userId-来自用户集合的id,[状态数据]} 那么什么是更好的设计决策呢?这完全取决于您将如何访问应用程序的数据。如果每次需要访问状态时,都会获取用户数据,那么将其存储在用户集合中是有意义的 想想博客和他们的评论,你永远不需要只靠自己来获取评论,你总是获取博客条目和相关评论 编辑: 一

假设我必须在mongoDB中存储一些与特定用户帐户相关的数据(比如“状态”)

执行此操作的更好选项是什么:集合状态:

1) {id:-这在用户集合中是相同的,[状态数据]}

2) {id:-状态的某个唯一id,userId-来自用户集合的id,[状态数据]}


那么什么是更好的设计决策呢?

这完全取决于您将如何访问应用程序的数据。如果每次需要访问状态时,都会获取用户数据,那么将其存储在用户集合中是有意义的

想想博客和他们的评论,你永远不需要只靠自己来获取评论,你总是获取博客条目和相关评论

编辑: 一些考虑:

  • 如果您提到的这些列表彼此独立,并且每个用户的列表之间不需要引用整数,那么将它们存储在Users集合中是有意义的

  • <> >如果您认为用户文档将大于16MB(当前最大文档大小),那么您可能需要考虑分离集合(即不存储所有数据在一个地方,用户集合)


    您的状态数据是什么样子的?假设我要存储用户购买的物品列表和每个物品的一些用户特定信息。如果我要存储用户购买的物品列表和每个物品的一些用户特定信息,该怎么办?将所有这些东西都存储在用户集合中是个好主意吗?