Javascript MongoDb-重新加入分割mapreduce任务
我有一个map reduce函数,为了提高效率,不应该立即运行它。因此,我根据一系列ID对其进行了拆分,结果得到了一堆单独的集合。我现在想加入它们,并合并所有mapreduce结果。结果表仍然应该只有一个键,以及一个包含组合临时表值的值数组 我曾尝试在输出中使用“reduce”,这样现有表就可以得到更新,但这不起作用:Javascript MongoDb-重新加入分割mapreduce任务,javascript,mongodb,mapreduce,Javascript,Mongodb,Mapreduce,我有一个map reduce函数,为了提高效率,不应该立即运行它。因此,我根据一系列ID对其进行了拆分,结果得到了一堆单独的集合。我现在想加入它们,并合并所有mapreduce结果。结果表仍然应该只有一个键,以及一个包含组合临时表值的值数组 我曾尝试在输出中使用“reduce”,这样现有表就可以得到更新,但这不起作用: res = db.People.mapReduce(m, r, {query:{xyz}, out:{reduce:"FoodPerPeople"}}); (编辑)它为我提供嵌
res = db.People.mapReduce(m, r, {query:{xyz}, out:{reduce:"FoodPerPeople"}});
(编辑)它为我提供嵌套数组:
{
"_id" : "Banana",
"value" : ["Bart", ["Joe"]]
}
我理解为什么会发生这种情况——re-reduce函数将输入的值数组视为其自身的值
我正在寻找的示例:
收集1:
{
"_id" : "Banana",
"value" : ["Bart"]
}
收集2:
{
"_id" : "Banana",
"value" : ["Joe"]
}
组合系列:-我如何得到这个
{
"_id" : "Banana",
"value" : ["Bart", "Joe"]
}
很可能您的reduce函数无法重新导出已经减少的数据。您应该阅读此内容,并尝试使reduce函数符合此标准。您能澄清一下“这不起作用”吗?你会得到一个错误,或者只是意外的结果吗?谢谢。你也可以显示你的map和reduce函数吗?我认为你需要显示你原来的map/reduce函数。您所描述的应该与
reduce
选项一起使用,但您的输出表明您的map
和reduce
函数可能不正确。