bulk_delete в mongodb, используя mongoid ruby
У меня есть 10 миллионов документов в коллекции монго по состоянию на current_date и я хочу уничтожить 6 миллионов документов, которые старше, чем вчера.
В mongoid есть какая-либо опция bulk_delete? Я знаю, что я могу Mongo::my_collection.collection.insert(data)
который запускает только одну команду вставки.
Точно так же есть ли способ массового удаления в mongoid?
1 ответ
Есть команда deleteMany, но, несмотря на то, что это одна команда, время выполнения может быть огромным и загружать вашу базу данных, в то время как удаление будет значительным, если не сказать больше.
Я написал бы сценарий, который будет медленно уничтожать записи разумными кусками (т. Е. По 1000 записей на запрос).