0
マイNodeJSに機能をマップ減らすNodeJS MongoDBのネイティブドライバの結果を与えていないReduceが、このようなものです:地図は
exports.mapReduceFunction = function(collection, map, reduce, options, callback){
_getModel(collection).mapReduce(map, reduce, options, function(err, docs){
_prepResponse(err, docs, callback);
});
}
:
exports.getDistinctURLCount = function(params, callback){
var mapFunction = function(){
var bucket = 10;
emit(Math.floor(parseInt(this.xyz)/bucket), {count: 1});
};
var reduceFunction = function(key, values){
var urlCount = 0;
if(values != undefined){
values.forEach(function(value) {
urlCount += value.count ;
});
}
return urlCount;
};
var finalizeFunction = function (key, reducedVal) {
if(isNaN(reducedVal)){
return reducedVal.count
}else{
return reducedVal
}
};
var output = {
out: {"inline":1},
finalize: finalizeFunction
};
return mongoMan.mapReduceFunction("clients", mapFunction, reduceFunction, output, function(err, result){
if(err){
callback(err, null);
}else{
console.log(result);
callback(null, result);
}
}
MongoManはマップ-減らす機能を受け入れ、別のファイルであり、
map reduceクエリはMongo Shellで正常に実行されますが、NodeJSから呼び出されたときには結果は得られません。空でもない。
地図を渡す際に何か間違っているのですか?機能を減らしますか?