Добавление нового свойства в каждый документ в большой коллекции

Используя оболочку mongodb, я пытаюсь добавить новое свойство к каждому документу в большой коллекции. Коллекция (листинг) имеет существующее свойство с именем Address. Я просто пытаюсь добавить новое свойство с именем LowerCaseAddress, которое можно использовать для поиска, чтобы мне не нужно было использовать регулярное выражение без учета регистра для сопоставления адресов, что происходит медленно.

Вот сценарий, который я пытался использовать в оболочке:

for( var c = db.Listing.find(); c.hasNext(); ) {
   var listing = c.next();
   db.Listing.update( { LowerCaseAddress: listing.Address.toLowerCase() });
}

Он работал ~ 6 часов, а затем мой компьютер сломался. Есть ли лучший способ добавить новое свойство к каждому документу в большой коллекции (~ 4 миллиона записей)?

9
задан Andrew Orsich 31 May 2011 в 13:35
поделиться