Ihr Ansatz ist im Grunde richtig. Allerdings würde ich eine solche Sammlung nicht als "riesig" betrachten. Sie können etwas Ähnliches von der Shell aus ausführen:
coll.find({}).forEach(function (doc) {
doc.flag = Math.floor((Math.random()*2)+1);
coll.save(doc);
});
Abhängig von Ihrer MongoDB-Version, -Konfiguration und -Auslastung kann dies zwischen einigen Minuten und mehreren Stunden dauern
Wenn Sie diese Aktualisierung in großen Mengen durchführen möchten, verwenden Sie einige Bedingungen in Ihrem Abfragedokument, z. B. coll.find({"aFiled" : {$gt : minVal}, "aFiled" : {$lt : maxVal}})