mongoDB - ремонт не рекомендуется в случае сегментированного кластера.
Если используется кластер с набором реплик, используйте компактную команду, она перезаписывает и дефрагментирует все файлы данных и индексов всех коллекций.
синтаксис:
db.runCommand( { compact : "collection_name" } )
при использовании с силой: true, компактный запуск на первичном из набора реплик.
например, db.runCommand ( { command : "collection_name", force : true } )
Другие вопросы для рассмотрения:
-Он блокирует операции. поэтому рекомендуется выполнить в окне обслуживания.
-Если наборы реплик работают на разных серверах, необходимо выполнять на каждом элементе отдельно
- В случае сегментированного кластера компакт должен выполняться на каждом элементе сегмента отдельно. Невозможно выполнить против экземпляра Mongos.