У меня есть коллекция около 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 с разными значениями эффективно?