我知道Mongo对工作方式更加主观(请不要因此而关闭这个帖子)但是对于Mongo存储这两种方式存在性能或“最佳实践”方式: -
选项1 - 一个文档中的所有开关,每个文档都包含字段: -
{
"stuffA": 415125,
"booleanSwitchA": true,
"booleanSwitchB": false,
"booleanSwitchC": true,
}
或
选项2 - 带有一个字段开关的多个文档 - 在应用程序中整理: -
{
"stuffA": 415125,
"switch": "a",
}
{
"stuffA": 415125,
"switch": "b",
}
{
"stuffA": 415125,
"switch": "c",
}
答案 0 :(得分:3)
我认为该选项取决于您希望如何使用它。如果您必须查询以根据stuffA加载一个查询中的所有信息,那么选项1是最佳选项,但如果您必须单独查询每个开关,则选项2将继续。即使我认为可能的设计之一也可以,因为你也可以索引数组元素。
{
"stuffA": 415125,
"OnSwitch" : {"A" , "C"},
"OffSwitch" : {"C"}
}