我想实现一个mongodb中的分层结构化数据库。有人可以解释一下我的结构
在这里,所有叶节点将具有多个数据,例如数组。例如。所有叶节点将具有员工详细信息。
方法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",
...
}