2016-12-28 50 views
1

我有一個客戶端 - 服務器應用程序,我打算在mongodb上存儲跟蹤和日誌記錄。我最初的想法是使用公共客戶端數據(會話,ipaddress,userid,dateCreated等)和該會話中該用戶的每個日誌條目的數組,爲每個用戶會話創建一個文檔。但我讀到,在我的情況下,對於mongodb http://www.askasya.com/post/largeembeddedarrays/上的大數組不是很好的做法,客戶機會話日誌數組可能會有數千個條目。用於記錄的mongodb結構?

另一方面,複製每個日誌條目的公共參數似乎浪費空間。

回答

0

最後,我創建了一個文檔,以便爲每個日誌條目存儲具有ID和新文檔的所有客戶端會話數據,並使用通過該ID指向該文檔的屬性。即使通常情況下,不應該在mongodb上使用關係數據,對於日誌記錄,我認爲執行第二次查詢來獲取用戶會話數據不是問題,而是重複每個日誌中的數據或將所有日誌條目添加爲大數組。