【问题标题】:MongoDb Schema StructureMongoDb 模式结构
【发布时间】:2015-04-17 22:14:13
【问题描述】:

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

{
 "CategoryID" : 1,
 "ParentID" : 0,
"Name" : "Sample Cat"
}

还有另一个将使用该类别的集合

{
 "DocumentID" : 1,
 "CategoryID" : 1,
 "DocumentName" : "Doc XPXSAX"
}

这种设计的问题是,我什么时候不能使用它来进行实时搜索,这会将文档显示为

Doc XPXSAX 在 Sample Cat 中找到“(连同类别名称,不使用连接)

我也无法将文档嵌入到 Category 集合中(作为其中一个字段中的数组),因为我预计文档的数量会达到 50k。

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

谢谢。

【问题讨论】:

    标签: mongodb schema categories


    【解决方案1】:

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

    {
        "DocumentID" : 1,
        "category" : {
            "ID" : 1,
            "Name" : "Sample Cat",
            "ParentID" : 0
        },
        "DocumentName" : "Doc XPXSAX"
    }
    

    保留您需要在文档文档中显示的类别信息。您很少需要的信息可以保存在类别文档中,并且可以通过第二个查询或应用程序级连接找到。

    【讨论】:

      猜你喜欢
      • 2011-06-20
      • 1970-01-01
      • 2022-01-02
      • 2021-08-11
      • 2017-03-29
      • 2013-02-20
      • 2019-05-01
      • 2020-08-23
      • 2021-09-21
      相关资源
      最近更新 更多