在MeteorJS中建模深度嵌套集合的最佳实践

在MeteorJS中建模深度嵌套集合的最佳实践,meteor,Meteor,我问的是我应该和不应该为深度嵌套的集合存储什么ID 假设我有以下4个系列,我的建模如下: 城市 身份证 库 身份证 城市ID 书籍 身份证 城市id(?) 图书馆的 页面 身份证 城市id(?) 类库(?) 书呆子 我的问题是,我应该用它旁边的(??)来存储这些值,还是应该通过它所属的集合来查找这些值 例如,我应该在每个页面文档中存储libraryId,还是应该通过它所属的书籍查找该值 谢谢 这完全取决于如何查询它们。你能想象一个你需要一个城市所有页面的情况吗?如David所说,

我问的是我应该和不应该为深度嵌套的集合存储什么ID

假设我有以下4个系列,我的建模如下:

城市

  • 身份证

  • 身份证
  • 城市ID
书籍

  • 身份证
  • 城市id(?)
  • 图书馆的
页面

  • 身份证
  • 城市id(?)
  • 类库(?)
  • 书呆子
我的问题是,我应该用它旁边的(??)来存储这些值,还是应该通过它所属的集合来查找这些值

例如,我应该在每个页面文档中存储libraryId,还是应该通过它所属的书籍查找该值


谢谢

这完全取决于如何查询它们。你能想象一个你需要一个城市所有页面的情况吗?如David所说,定义应用程序的“访问模式”将真正有助于通知您的模式决策。MongoDB博客上有一篇关于经验法则的好文章