Массовое обновление / вставка в MongoDB? - PullRequest
10 голосов
/ 14 декабря 2010

Возможно ли сделать массовое обновление / вставку (не вставку) в MongoDB?

Если да, пожалуйста, укажите мне какие-либо документы, связанные с этим?

Спасибо

Ответы [ 3 ]

4 голосов
/ 15 декабря 2010

Вы можете использовать программу командной строки mongoimport она должна быть в вашем каталоге bino MongoDB ...

Есть два варианта, которые вы захотите использовать upsert ...

- вставка вставки или обновить уже существующие объекты
--upsertFields arg разделенные запятыми поля для запроса часть upsert. Вы должны убедиться, что это проиндексировано

Подробнее здесь: http://www.mongodb.org/display/DOCS/Import+Export+Tools

Или просто сделай ...

$ mongoimport --help
1 голос
/ 03 июля 2015

Монго может выполнить .js файл.Вы можете вставить все команды обновления в файл js.

t.js

db.record.update({md5:"a35f10a8339ab678612d1f86be08b81a"},{$set:{algres:[]}},false,true);
db.record.update({md5:"a35f10a8339ab678612d1f86be08b81b"},{$set:{algres:[]}},false,true);

затем mongo 127.0.0.1/test t.js

1 голос
/ 08 декабря 2014

Массовые обновления также можно выполнять партиями, как указано в документации:

Массовые методы MongoDB

Я использую их для импорта файлов CSV, которые мне нужно помассироватьнемного, прежде чем импортировать данные.Он немного медленный при работе с обновлениями, но он обновлял мои документы размером 50 КБ примерно за 83 секунды, что намного медленнее, чем команда mongoimport.

...