我嘗試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