1. Define the Map Function
> var mapFunction1 = function () { emit(this.store,this.available);};
2. Define the Reduce Function
> var reduceFunction1 = function(keyStore,valuesAvailable){return Array.sum(valuesAvailable);};
3. Perform the map-reduce
>db.mybookstore.mapReduce(mapFunction1,reduceFunction1,{out:"map_reduc e_example1"})
{
"result" : "map_reduce_example1", "timeMillis" : 131,
"counts" : { "input" : 12, "emit" : 12, "reduce" : 2, "output" : 5
},
"ok" : 1,
}
4. Check the Output collection
> db.map_reduce_example1.find().pretty()
{ "_id" : "cine book office", "value" : 17 } { "_id" : "laxman book depot", "value" : 32 } { "_id" : "raman book gallery", "value" : 22 } { "_id" : "royal book stores", "value" : 258 } { "_id" : "sameer bandhu", "value" : 78 }