1

所以我正在使用 mongo 进行 mapreducing,有时但并非总是如此,reduce 数组的第一个元素是一个 bson 对象,其中包含另一个 reduce 数组。我处理它的方式是将该数组与外部数组结果相结合。

我不明白为什么会这样,也找不到任何文档。谁能指出我正确的方向,以便我可以确定我正在正确处理这个问题?

4

1 回答 1

2

http://www.mongodb.org/display/DOCS/MapReduce#MapReduce-ReduceFunction 有你的答案(但你必须仔细阅读)。请参阅引用的部分:

“请注意,结果文档与 map 函数发出的文档具有相同的结构。这很重要,因为当 reduce 函数针对给定键运行时,不能保证处理该键(或用户名)的每个值. 事实上,reduce 函数可能要运行不止一次。

基本上,reduce 不会在每个“键”上“一次全部”运行,而是可以“增量”调用以处理已处理结果的新结果。

于 2012-05-14T15:49:07.620 回答