Din tilgang er dybest set korrekt. Jeg ville dog ikke betragte en sådan samling som "stor" Du kan køre noget lignende fra skallen:
coll.find({}).forEach(function (doc) {
doc.flag = Math.floor((Math.random()*2)+1);
coll.save(doc);
});
Afhængigt af din MongoDB-version, konfiguration og belastning kan dette tage noget mellem få minutter til flere timer
Hvis du vil udføre denne opdatering i massevis, skal du bruge nogle betingelser i dit forespørgselsdokument, f.eks. coll.find({"aFiled" : {$gt : minVal}, "aFiled" : {$lt : maxVal}})