NoSQL MongoDB中的数据建模-什么性能更好?

NoSQL MongoDB中的数据建模-什么性能更好?,mongodb,data-modeling,nosql,Mongodb,Data Modeling,Nosql,我想根据一些标准对搜索音乐曲目的数据进行建模, 让它成为:标准1,标准2,标准3 我不知道在该模式中存储曲目对查询性能有什么好处: criteria1, criteria2, criteria3 { _id: "_1512f23", name: "somevalue", } { _id: "_1512f23", name: "track 1", artist: "artist", criterias: { criteria1: "som

我想根据一些标准对搜索音乐曲目的数据进行建模, 让它成为:标准1,标准2,标准3

我不知道在该模式中存储曲目对查询性能有什么好处:

criteria1, criteria2, criteria3
{
   _id: "_1512f23",
   name: "somevalue",
}


{
   _id: "_1512f23",
   name: "track 1",
   artist: "artist",
   criterias: {
          criteria1: "somevalue",
          criteria2: "somevalue",
          criteria3: "somevalue"
   }
}

搜索什么更好?
Ofc在每个标准1、2、3集合中都会有大量的轨道和大约10-15个标准文档。

如果标准只是一些信息的标签,为什么不简单地将这些值存储在轨道文档中并编制索引呢?您需要单独的标准文档吗?@tom所以您更喜欢第一个选项?我知道这不是答案,但可能会有所帮助,MongoDB中的数据建模应该由您的数据访问模式控制。可以从MongoDB获取一大块数据并嵌入文档,这样您就可以一次性获得结果。记住这一点,我的建议是将所有标准与轨道保持一致。你在“标准”里到底储存了什么?请举例说明。你更常添加什么-新标准或新曲目?添加一个文档时,是否需要更新另一个的多个文档?
criteria
{
   _id: "_1512f23",
   name: "somevalue",
   criterias: {
          track: "somevalue",
          track: "somevalue",
          track: "somevalue"
   }
}


{
   _id: "_1512f23",
   name: "track 1",
   artist: "artist",
}