小编Igo*_*ekk的帖子

MapReduce问题

我有一个奇怪的MapReduce问题.

地图功能:

> mp
function () {
    emit(this.ContractID, {qty:this.Qty, qtybs:this.QtyBs});
}
Run Code Online (Sandbox Code Playgroud)

减少功能

> red
function (key, values) {
    var sum1 = 0, sum2 = 0;
    values.forEach(function (doc) {sum1 += doc.qty;sum2 += doc.qtybs;});
    return {a:sum1, b:sum2};
}
Run Code Online (Sandbox Code Playgroud)

运行MR以获得7份合约:

> result = db.fact_payments.mapReduce(mp, red, {out:"myout2", query:{ContractID:{$lte:10000100042}}});
{
        "result" : "myout2",
        "timeMillis" : 670,
        "counts" : {
                "input" : 591,
                "emit" : 591,
                "output" : 7
        },
        "ok" : 1,
}
> db.myout2.find()
{ "_id" : NumberLong("10000000042"), "value" : { "a" : 8331.04, …
Run Code Online (Sandbox Code Playgroud)

mongodb

4
推荐指数
1
解决办法
2062
查看次数

标签 统计

mongodb ×1