Как уменьшить объем хранилища MongoDB после удаления большого количества данных

У меня есть база данных в MongoDB, называемая дампом. В настоящее время он достиг 6 ГБ на моем сервере. Я решил удалить 90% данных в этой базе данных, чтобы уменьшить занимаемое дисковое пространство. Но после этого его размер по-прежнему составляет 6 ГБ, тогда как реальный размер хранилища составляет всего 250 МБ.

Я предполагаю, что это дизайн MongoDB? Есть ли удобный способ уменьшить его размер? Спасибо заранее.

Ответы

Ответ 1

Попробуйте (источник):

$ mongo mydb
> db.repairDatabase()

Ответ 2

Чтобы сжать файлы данных, вы можете запустить либо запустить MongoDB с помощью mongod --repair, либо подключиться к базе данных через оболочку и запустить db.repairDatabase().

Также существует новая команда compact, запланированная для версии 1.0, которая будет делать уплотнение на месте.