2011-03-23 87 views
0

我們有兩個非常相似的數據類型,都是「用戶」。第一個由活躍用戶組成,另一個用戶自動提取並拉入我們的系統,與活躍用戶相比,優先級(訪問速度)要低得多。應該將兩個具有不同用例的相似數據類型存儲在同一個集合中嗎?

每個活躍用戶都有可能引入至少1000個數據挖掘用戶。我們將更頻繁地使用活動用戶,而性能是我們最關心的問題。隨着數據挖掘用戶,性能是次要的,但我們將存儲大量的。

關於我們應該如何處理的任何輸入?每個用戶(主動和數據挖掘)或兩個集合(一個用於活動,一個用於數據挖掘用戶)的集合?

回答

1

只要您的應用程序可以處理它,Mongo非常適合在同一個集合中存儲類似但不同的對象。

數據挖掘用戶是活動用戶的孩子嗎?如果是這樣,那麼你可能想要將它們嵌入到活動用戶文檔中。您無需一直訪問它們 - 如果您不需要整個文件,MongoDB允許您獲取文件的某些部分。

你會以不同的方式查詢它們嗎?如果是這樣,你可能想保持它們分開,以便你的索引不會變得臃腫。

你會用查詢命令查詢其中任何一個嗎?如果是這樣,你會想分開它們,這樣你就不需要每次都做完整的收集掃描。

相關問題