我尝试Ravendb首次,并试图建立一个锻炼的应用程序的模型。 这里是我不知道如何安排课程的一个简单的例子。RavenDB建模日历应用程序
User{
string:Name
string:Email
//+ 20 or so more properties
}
CalendarEntry{
DateTime:TimeStamp
decimal:Weight
decimal:Waist
List<Meal> Meals
List<WorkoutSession> WorkoutSessions
//+ more properties
}
成员将更新与体重,腰围,他们每天练习吧会话,食物摄入的卡路里等他们的训练日程。所以日历条目的列表将每天增长。
所以现在的问题是,如果用户对象包含日历条目列表或者我应该使用它作为自己的实体集合与参考编号,以用户?
我主要关心的是Ravendb中最大的文档大小(是否有一个?),因为List每天都在增长,并且如果日历条目是嵌套的,一年后用户文档可能会变得太沉重采集。
任何意见,将不胜感激
//金
我也在考虑这个问题,我将如何查询数据。大多数情况下它非常简单。例如GetAllEntriesByUserId(userI)。但可能有某处我想比较不同的人民excersize长度,excersize类型...所以我会去后者,使用日历条目作为其自己的集合与UserRefId在每个条目中。但是您将CalendarEntry设置中的基本建模错误视为其实体集合吗? – Kimpo
正确,所描述的模型是完全可以接受的和可持续的。 – Nick