MongoDB: 这些对象属于子文档数组还是新集合?
MongoDB: Do these objects belong in subdocument arrays or a new collection?
我正在构建一个 MEAN.js 应用程序(初学者实验项目),我的模型需要存储 属于特定用户 的数据。这是模型:
{
"_id" : ObjectId("57b633f677d71aae1b8b56dc"),
"pauses" : [
{
"_id" : ObjectId("57b633f877d71aae1b8b56dd"),
"momentResumed" : null,
"momentPaused" : ISODate("2016-08-18T22:17:28.222Z")
},
{
"_id" : ObjectId("57b633fb77d71aae1b8b56de"),
"momentResumed" : null,
"momentPaused" : ISODate("2016-08-18T22:17:31.641Z")
},
{
"_id" : ObjectId("57b6392877d71aae1b8b56df"),
"momentResumed" : null,
"momentPaused" : ISODate("2016-08-18T22:39:36.032Z")
}
],
"momentCompleted" : ISODate("2016-08-18T22:39:33.366Z"),
"momentStarted" : ISODate("2016-08-18T22:17:26.747Z")
}
我需要为每个用户存储很多(成百上千个)这样的字段,并且随着我的应用程序的发展和添加新功能,我想向其中添加更多字段。到目前为止,我一直在将它们填充到每个用户文档中的数组 属性 中(这意味着我现在有一个包含数组的文档数组),但这使得访问子文件中的数据变得困难 -数组,我开始担心它不是一个可持续的模型。
一些更有经验的 MongoDB 开发者可以参与进来吗?这是一个可持续的模型,还是我应该将所有这些对象移动到一个新的集合中,然后想出一种将它们连接到我的用户对象的好方法?
我凭直觉将这些 objects 移动到它们自己的 collection,这绝对是正确的决定。我所有的查询都可以简化。
我正在构建一个 MEAN.js 应用程序(初学者实验项目),我的模型需要存储 属于特定用户 的数据。这是模型:
{
"_id" : ObjectId("57b633f677d71aae1b8b56dc"),
"pauses" : [
{
"_id" : ObjectId("57b633f877d71aae1b8b56dd"),
"momentResumed" : null,
"momentPaused" : ISODate("2016-08-18T22:17:28.222Z")
},
{
"_id" : ObjectId("57b633fb77d71aae1b8b56de"),
"momentResumed" : null,
"momentPaused" : ISODate("2016-08-18T22:17:31.641Z")
},
{
"_id" : ObjectId("57b6392877d71aae1b8b56df"),
"momentResumed" : null,
"momentPaused" : ISODate("2016-08-18T22:39:36.032Z")
}
],
"momentCompleted" : ISODate("2016-08-18T22:39:33.366Z"),
"momentStarted" : ISODate("2016-08-18T22:17:26.747Z")
}
我需要为每个用户存储很多(成百上千个)这样的字段,并且随着我的应用程序的发展和添加新功能,我想向其中添加更多字段。到目前为止,我一直在将它们填充到每个用户文档中的数组 属性 中(这意味着我现在有一个包含数组的文档数组),但这使得访问子文件中的数据变得困难 -数组,我开始担心它不是一个可持续的模型。
一些更有经验的 MongoDB 开发者可以参与进来吗?这是一个可持续的模型,还是我应该将所有这些对象移动到一个新的集合中,然后想出一种将它们连接到我的用户对象的好方法?
我凭直觉将这些 objects 移动到它们自己的 collection,这绝对是正确的决定。我所有的查询都可以简化。