Я пытаюсь выполнить быстрое обновление моей большой коллекции, состоящей из объектов, выглядящих следующим образом:
{_id: 0, 'Name': 'Bob'}
Здесь я пытаюсь выполнить массовое обновление.Причина, по которой я использую цикл массовых операций, а не команду «update_many», заключается в том, что мое обновление для определенного идентификатора может иметь другое имя, поэтому мне нужно изменить значения, которые я передаю в наборе
bulk = myTable.initialize_unordered_bulk_op()
counter = 0
i = 1
while(i < 100000):
bulk.find({ '_id': i }).update({ '$set': { 'Name': 'N' } })
i += 1
counter += 1
if (counter % 500 == 0):
bulk.execute()
bulk = myTable.initialize_ordered_bulk_op()
if(counter % 500 != 0):
bulk.execute()
Однако, когда я запускаю этот код, в таблице нет никаких изменений, и у каждой записи все еще есть имя 'Bob'
Есть идеи, как бы я это исправить?Я как-то не совершаю?В конечном итоге моя цель - быстро обновлять данные, но передавать такие значения, как
$set: { 'Name' : Names[i] }