我一直在试图找出构建MongoDB数据库的最佳方法。我正在开发一个跟踪每日用户数据的流星应用程序。目前我有1个收集所有用户数据的集合。每个用户都有自己的类别,每个类别都有自己的子类别集。所有这些都可以由用户编辑,因此它们不是标准的,这就是为什么它有点令人困惑。
我现在的情况如下所示。但是,通过此设置,这意味着我每天,每个用户,每个类别,每个子类别都会在我的收藏中添加一个新文档。这似乎相当不足。
Collection.insert({
date: today,
dateNum: new Date(today),
userID: 24329843,
category: "Cat1",
subcategory: "sub1",
entry: {
report: false,
pts: 0
}
})
我希望每天为所有用户提供一份文档,并使用数据结构分别存储每个用户的数据。但是这将要求类别和子类别的键在用户与用户之间不同(每个用户可以编辑他们自己的类别和子类别)。这会是更好的架构还是更好地拥有大量较小的文档?
Collection.insert({
date: today,
dateNum: new Date(today),
userID: 24329843,
categories: {
cat1: {
sub1: {
entry: {
report: false,
pts: 0
}
}
}
}
});