【发布时间】:2014-04-11 10:35:48
【问题描述】:
使用此代码:
var map = function(){
emit(1, { read: this.read, important: this.important, count: 1 })
}
var reduce = function(key, vals) {
var i = 0, r = 0, c = 0;
vals.forEach(function(d) {
r += !d.read ? 0 : 1;
i += d.important ? 0 : 1
c += d.count;
});
return { read: r, important: i, count: c }
}
db.ipdr.mapReduce(map, reduce, { out: "__mr_test", verbose: true, query: { liid: "40001" } });
db.getCollection("__mr_test").find();
我的计数不完整:
{
"_id" : 1,
"value" : {
"read" : 1,
"important" : 7,
"count" : 7607
}
}
“计数”是可以的,但“阅读”和“重要”应该高很多。我错过了什么吗?
【问题讨论】:
标签: javascript mongodb mapreduce aggregation-framework