在mongodb中创建多个集合好吗

在mongodb中创建多个集合好吗,mongodb,Mongodb,我有两种文件: { field1: value1, field2: value2, category: cpp } 及 我拥有大约300000份属于第一类(cpp)的文档,以及大约400000份属于第二类(cs)的文档。在这两种情况下,除类别外,所有字段都相同 对于读取操作,哪个选项速度更快: 为每个类别创建单独的集合 只有一个集合,并在类别字段上添加索引 我建议坚持单一收藏,并增加一个分类。显然,当您阅读时,它将只扫描相关文档。为了进一步提高性能,您可以实施您需要告诉

我有两种文件:

{
    field1: value1,
    field2: value2,
    category: cpp
}

我拥有大约300000份属于第一类(cpp)的文档,以及大约400000份属于第二类(cs)的文档。在这两种情况下,除
类别
外,所有字段都相同

对于读取操作,哪个选项速度更快:

  • 为每个类别创建单独的集合

  • 只有一个集合,并在
    类别
    字段上添加索引


  • 我建议坚持单一收藏,并增加一个分类。显然,当您阅读时,它将只扫描相关文档。为了进一步提高性能,您可以实施

    您需要告诉我们有关您的读取模式的更多信息。例如,您是否需要在单个查询中同时使用这两个类别的文档?非功能性主题(如备份、安全性或其他性能,例如单个字段上的索引)如何?@dnickless 1。我可以对不同的文档使用不同的查询。2.我可以在这个字段(类别)上添加索引,但这会更快吗?不,不会。如果您将所有文档都保存在同一个集合中,并且需要在每次查询时进行筛选,那么筛选将花费一定的成本—没有任何东西是免费的……;)因此,如果这些文档彼此之间没有任何关系,只是在这个阶段它们碰巧有相似的字段,那么请务必将它们放在单独的集合中!
    {
        field1: value1,
        field2: value2,
        category: cs
    }