【问题标题】:mongodb data model design - embedded document only?mongodb 数据模型设计 - 仅嵌入文档?
【发布时间】:2017-02-05 17:59:12
【问题描述】:

我不确定我是否必须在此示例中仅使用嵌入文档:

  1. 我有一个用户的基本模型
  2. 每个用户都有多个页面
  3. 每个页面都有多个会话
  4. 每个会话都有多个操作

所以它可能看起来像这样:

user = {
  'email': 'test@test.com',
  'pages': [
       {
          'name': 'best page',
          'sessions': [
              {
                 session_name: 'abc',
                 actions: [
                    {abc: 'def'},
                    {abc: 'def'}
                 ]
              },

          ]
       }, ..
  ]
};

基本上有3个嵌套数组。会话数据将仅用于读取(无更新操作)。我正在考虑将会话作为另一种模型在页面上进行参考。这是个好主意吗?

【问题讨论】:

    标签: mongodb database-schema


    【解决方案1】:

    您的架构做得非常好。one to many relationship 就是这种情况。如您的示例所示,您必须将Sessions data 保留在nested form 中。即使您只想查询会话数据,将来也可能需要issue multiple queries to resolve the references。所以,为了更好的实践,你不应该单独保存会话数据。欲了解更多信息,请参阅Mongo: Model One-to-Many Relationships

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-01
      • 2014-02-13
      相关资源
      最近更新 更多