2012-02-25 70 views
2

MongoDB中的所有數據都存儲在計算機系統的磁盤上嗎?如果查詢正在運行,它是否直接從磁盤中運行?因爲它來自磁盤,它可以根據磁盤大小進行縮放嗎?是基於MongoDB的磁盤嗎?

+0

你是什麼意思?如果它不是基於磁盤的,而是基於內存的,它不會是持久的(顯然它是)。你需要更具體地指定你的意思。 – 2012-02-25 09:47:23

+1

是的,不是真的,也沒有。搞定了! – 2012-02-25 10:48:51

回答

5

MongoDB確實將其所有數據存儲在磁盤上,以便在服務器重新啓動期間它可以保留它。但是,它主要是喜歡記憶。它依靠操作系統來安排其數據庫的哪些位保留在內存中,哪些位保留在磁盤上。如果數據存儲在內存中,查詢性能會更好,因爲速度更快,但MongoDB(或者說操作系統)會將內存數據存入磁盤。所以,爲了回答你的問題:是的,MongoDB的數據存儲在磁盤上。查詢從內存直接運行,如果不是所有數據都適合內存,則由磁盤支持。它根據磁盤大小進行擴展,但是您將從更大的內存獲益。

+0

更新:內存存儲引擎可從3.2.6版本獲得:https://docs.mongodb.com/v3.2/core/inmemory/ – 2016-10-30 16:04:03