0

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

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

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

2) {id: - state 的一些唯一 id,userId - 来自用户集合的 id,[state data]}

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

4

1 回答 1

1

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

想想博客及其评论,您永远不需要单独获取评论,您总是获取博客条目和相关评论。

编辑: 一些考虑:

  1. 如果您所说的这些列表都是相互独立的,并且每个用户的列表之间不需要引用完整性,那么将它们存储在 Users 集合中是有意义的

  2. 如果您认为用户文档将大于 16MB(当前最大文档大小),那么您可能必须考虑分离集合(即不将所有数据存储在一个位置,用户集合)

于 2012-12-31T18:54:57.277 回答