Mongo - 您应该在更多领域做更多文件吗?

时间:2013-03-25 12:21:23

标签: mongodb performance structure database

我知道Mongo对工作方式更加主观(请不要因此而关闭这个帖子)但是对于Mongo存储这两种方式存在性能或“最佳实践”方式: -

选项1 - 一个文档中的所有开关,每个文档都包含字段: -

{
    "stuffA": 415125,
    "booleanSwitchA": true,
    "booleanSwitchB": false,
    "booleanSwitchC": true,
}

选项2 - 带有一个字段开关的多个文档 - 在应用程序中整理: -

{
    "stuffA": 415125,
    "switch": "a",
}
{
    "stuffA": 415125,
    "switch": "b",
}
{
    "stuffA": 415125,
    "switch": "c",
}

1 个答案:

答案 0 :(得分:3)

我认为该选项取决于您希望如何使用它。如果您必须查询以根据stuffA加载一个查询中的所有信息,那么选项1是最佳选项,但如果您必须单独查询每个开关,则选项2将继续。即使我认为可能的设计之一也可以,因为你也可以索引数组元素。

{
"stuffA": 415125,
"OnSwitch" : {"A" , "C"},
"OffSwitch" : {"C"}
}