sql >> Base de Datos >  >> NoSQL >> MongoDB

mapa mongoDB/reducir menos el reducir

Al usar map/reduce, siempre terminará con

{ "value" : { <reduced data> } }

Para eliminar el value clave tendrá que usar un finalize función.

Esto es lo más simple que puede hacer para copiar datos de una colección a otra:

map = function() { emit(this._id, this ); }
reduce = function(key, values) { return values[0]; }
finalize = function(key, value) { db.collection_2.insert(value); }

Luego, cuando correría normalmente:

db.collection_1.mapReduce(map, reduce, { finalize: finalize });