












db.runCommand(
{ mapreduce : <collection>,
map : <mapfunction>,
reduce : <reducefunction>
[, query : <query filter object>]
[, sort : <sort the query. useful for optimization>]
[, limit : <number of objects to return from collection>]
[, out : <see output options below>]
[, keeptemp: <true|false>]
[, finalize : <finalizefunction>]
[, scope : <object where fields go into javascript global scope >]
[, verbose : true] }
);
这两天小小的学习了一下MongoDB,关于MapReduce的介绍就不再多说,可以参考官方文档:http://www.mongodb.org/display/DOCS/MapReduce,使用示例可以看这里:https://github.com/mongodb/mongo/blob/master/jstests/mr5.js,这里仅从个人理解角度对MapReduce的工作步骤做个简单记录:
m = function(){
if (this.userid==123){
emit(this.userid, this.money)
}
}r = function(key, values){
var sum = 0;
for (var i = 0; i < values.length; i ++)
{
sum += values[i];
}
return {userid : key, sum : sum};
}db.users.mapReduce(m, r, {out : {inline : 1}})
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。