У меня есть коллекция около 1 миллиона записей с 20 полями в каждой. Мне нужно обновить целочисленное поле flag
в каждой записи (документе), случайным образом назначив 1 или 2 этому полю flag
. Как это сделать при итерации курсора по всей коллекции? Не кажется хорошей идеей второй раз искать объект, уже найденный MongoDB, только для того, чтобы иметь возможность его обновить:
DBCursor cursor = coll.find();
try {
while(cursor.hasNext()) {
BasicDBObject obj = (BasicDBObject) cursor.next();
...
coll.update(query,newObj)
}
} finally {
cursor.close();
}
Как эффективно обновлять поле в каждом документе огромной коллекции MongoDB с разными значениями?
multi
, потому что я обновляю каждый документ уникальным значением. Это не то же самое, что обновлять множество документов одним и тем же значением. - person Anton Ashanin   schedule 12.04.2013