Когато използвате map/reduce, винаги ще се окажете с
{ "value" : { <reduced data> } }
За да премахнете value
ключ, ще трябва да използвате finalize
функция.
Ето най-простото, което можете да направите, за да копирате данни от една колекция в друга:
map = function() { emit(this._id, this ); }
reduce = function(key, values) { return values[0]; }
finalize = function(key, value) { db.collection_2.insert(value); }
Тогава, когато бихте работили както обикновено:
db.collection_1.mapReduce(map, reduce, { finalize: finalize });