2017-10-16 55 views
-2

許多mongodb收藏對mongodb性能,內存和容量有很大影響嗎?我正在設計一個帶mvc模式的api,併爲每個模型創建一個集合。我質疑我現在的做法。我不知道是否有很多收藏

回答

0

MongoDB with the WirdeTiger engine supports an unlimited number of collections。所以你不會遇到任何嚴格的技術限制。

當你不知道的東西應該是一個集合或多個集合,這些都是一些你需要牢記的事項:

  • 多個集合=更多的維護工作。在集合級別配置分片。所以擁有大量的集合將會使分片配置工作更多。您還需要分別設置每個集合的索引,但這很容易自動化,因爲已存在的索引上的createIndex什麼也不做。
  • MongoDB API的設計方式是每次數據庫查詢一次對一個集合進行操作。這意味着當您需要搜索n不同集合中的文檔時,您需要執行n查詢。當您需要彙總存儲在多個集合中的數據時,會遇到更多問題。因此,一起查詢的任何數據應該一起存儲在同一個集合中。

創建一個集合模型中的每個類是通常拇指的神統治,但它不是一個金錘解決方案。在某些情況下,您想要將對象嵌入其父對象文檔中,而不是將它們放入單獨的集合中。還有一些情況下,您想要將所有具有相同基類的對象放在同一個集合中,以便從MongoDB處理異構集合的能力中受益。但這超出了這個問題的範圍。

相關問題