2015-05-03 131 views
-2

該系統的需求是存儲有關用戶的信息並對其進行報告。所以......用戶成爲一個單獨的文檔是有意義的,並且可能在該用戶上有一個「事件」或「標籤」數組,並且可以執行一個查詢來返回所有具有特定事件的用戶......這就是精細。但是 - 我擔心這裏的表現。一段時間後,這些數據將非常快速地變大。用於用戶標記系統的MongoDB

比方說,我們有一個非常活躍的用戶 - 它擁有數十億的事件和特定用戶文檔的尺寸接近千兆字節。在這種情況下,簡單的拖動該文檔的行爲將需要一段時間...並更新然後發送回去也需要一段時間(儘管我猜個別屬性可以單獨更新...)

管理這個的方法是什麼?

+0

「使用什麼工具」的問題是題外話題,你的問題已經得到了5票中的3票,所以我編輯它以使其成爲話題。 – Philipp

回答

0

大小接近千兆字節的文件已經是技術上是不可能的,因爲MongoDB的文檔上放16MB的限制。

當你有隨時間增長的文件,它通常是更好地把不斷增長的數據在一個單獨的集合作爲單獨的文檔。原因在於,當文檔超出其初始大小時,MongoDB需要將文檔不時移動到另一個文件位置,這會大大降低更新速度。