Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
假设我必须在 mongoDB 中存储一些与特定用户帐户相关的数据(比如“状态”)。
执行此操作的更好选择是什么:集合状态:
1) {id: - 在用户集合中将是相同的,[状态数据]}
2) {id: - state 的一些唯一 id,userId - 来自用户集合的 id,[state data]}
那么什么是更好的设计决策呢?
这完全取决于您将如何访问应用程序的数据。如果每次您需要访问状态,无论如何您都将获取用户数据,将其存储在用户集合中是有意义的。
想想博客及其评论,您永远不需要单独获取评论,您总是获取博客条目和相关评论。
编辑: 一些考虑:
如果您所说的这些列表都是相互独立的,并且每个用户的列表之间不需要引用完整性,那么将它们存储在 Users 集合中是有意义的
如果您认为用户文档将大于 16MB(当前最大文档大小),那么您可能必须考虑分离集合(即不将所有数据存储在一个位置,用户集合)