亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

不停機下,mongodb數據庫碎片如何整理?

不停機下,mongodb數據庫碎片如何整理?

九州編程 2018-08-21 07:59:38
我將mongo里面大量多余的數據都刪除后,發現內存和文件并沒有收縮,仍然占用大量內存和硬盤,性能變化不大,請問,mongodb怎么進行碎片整理?
查看完整描述

1 回答

?
炎炎設計

TA貢獻1808條經驗 獲得超4個贊

什么版本的MongoDB,什么引擎?
3.2以上的WT引擎可以使用Compact來釋放空間,之前的版本無論是WT還是MMAPv1都只能通過重新同步復制集的方式釋放空間。
問題是,生產環境一般來說沒有必要釋放,因為早晚還會占回來,而且空閑的空間反正也還會重用,如果不是真的缺那點空間,就別去釋放了。
至于是不是停機的問題,不止是這個問題,大部分時候都應該考慮復制集來解決,多個結點并行運行就是為了不停機準備的,拿掉一個下來做維護不會有多大的問題,拿主結點的時候可能會有幾秒鐘不可寫而已。

理論上說回收磁盤空間對性能不會有任何有益的影響。但是在3.0.6和3.0.7所使用的WiredTiger引擎上發生過一個bug,在大量刪除文檔時BTree會有錯誤的平衡從而導致性能嚴重下降。


查看完整回答
反對 回復 2018-08-26
  • 1 回答
  • 0 關注
  • 1104 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號