如何在mongodb中建立分层结构化数据库?

问题描述 投票:0回答:1

我想实现一个mongodb中的分层结构化数据库。有人可以解释一下我的结构


类似的东西enter image description here

在这里,所有叶节点将具有多个数据,例如数组。例如。所有叶节点将具有员工详细信息。


或者为了更好地理解,我可以实现这样的数据库enter image description here
node.js database mongodb firebase-realtime-database
1个回答
0
投票

方法1:在mongodb中,您可以嵌入以下文档]

{
    parent: { 
        level1: [{
           level2: [{
              myField: myValue1
           }, 
           {
              myField: myValue2
           }]
        },
        {
           level2: [{
              myField: myValue1
           }, 
           {
              myField: myValue2
           }] 
    }
}

请注意,每个mongodb文档的默认限制为16mb。因此,只要您的孩子人数不超过文档限制,这种方法就可以正常工作。尽管可以,但是除非没有其他方法,否则我建议不要更改默认文档大小限制。

方法2:为每个集合创建不同的集合,并为父项创建一个参考字段

//Collection1: parent
{
   id: "1", 
   ....
}

//Collection1 : level1
{
  id: "dsf",
  parentId: 1,
  ...
}

//Collection1: level2
{
  id: "bs",
  level1Id: "dsf",
  ...
}
© www.soinside.com 2019 - 2024. All rights reserved.