MongoDb模式结构

MongoDb模式结构,mongodb,schema,categories,Mongodb,Schema,Categories,我有一个名为“Category”的集合,其结构如下: { "CategoryID" : 1, "ParentID" : 0, "Name" : "Sample Cat" } 以及另一个将使用此类别的集合 { "DocumentID" : 1, "CategoryID" : 1, "DocumentName" : "Doc XPXSAX" } 这个设计的问题是,什么时候我不能使用它来进行实时搜索,从而将文档显示为 在示例Cat中找到Doc XPXSAX(以及不使用join的类别名称)

我有一个名为“Category”的集合,其结构如下:

{
 "CategoryID" : 1,
 "ParentID" : 0,
"Name" : "Sample Cat"
}
以及另一个将使用此类别的集合

{
 "DocumentID" : 1,
 "CategoryID" : 1,
 "DocumentName" : "Doc XPXSAX"
}
这个设计的问题是,什么时候我不能使用它来进行实时搜索,从而将文档显示为

在示例Cat中找到Doc XPXSAX(以及不使用join的类别名称)

此外,我无法将文档嵌入
类别
集合中(作为一个字段中的数组),因为我预计文档数量将增加到50k

什么样的替代模式设计可以让我在不使用模仿连接的黑客的情况下整合高效的搜索功能


谢谢。

如果您不喜欢应用程序级加入,为什么不将类别嵌入文档中

{
    "DocumentID" : 1,
    "category" : {
        "ID" : 1,
        "Name" : "Sample Cat",
        "ParentID" : 0
    },
    "DocumentName" : "Doc XPXSAX"
}
保留要在文档中显示的类别信息。很少需要的信息可以存在于类别文档中,并通过第二次查询或应用程序级联接找到