在mongoDB中刪除數(shù)據(jù)并不會(huì)直接釋放磁盤(pán),而是產(chǎn)生很多碎片,這些碎片會(huì)被mongoDB繼續(xù)利用。
清理數(shù)據(jù)之后,當(dāng)有新的數(shù)據(jù)進(jìn)來(lái)之后,會(huì)將數(shù)據(jù)分配到該數(shù)據(jù)文件中,不會(huì)占用額外的空間,在mongDB看來(lái)空間已經(jīng)釋放了,只是從系統(tǒng)層面看空間沒(méi)有釋放。
當(dāng)有新數(shù)據(jù)插入時(shí),會(huì)重復(fù)利用這些碎片,而不需要新申請(qǐng)磁盤(pán)空間。但是這會(huì)導(dǎo)致的問(wèn)題是,磁盤(pán)可能一直處于高水位的使用水平。
對(duì)運(yùn)維來(lái)說(shuō)是一個(gè)定時(shí)炸彈,因?yàn)樗槠粫?huì)被所屬的庫(kù)使用,但我們經(jīng)常會(huì)新建很多庫(kù),這就導(dǎo)致磁盤(pán)越來(lái)越緊張。
MongoDB 磁盤(pán)清理那些事兒
https://xie.infoq.cn/article/d8cb871a7733646996f60641a
Monodb刪除數(shù)據(jù)和磁盤(pán)空間釋放
https://www.homedt.net/98775.html
Understanding and Managing Disk Space on your MongoDB Server
https://scalegrid.io/blog/understanding-managing-disk-space-on-your-mongodb-server
Reclaiming Disk Space From MongoDB
https://dzone.com/articles/reclaiming-disk-space-from-mongodb