所以我使用mongo进行mapreducing,有时候,但并非总是如此,我的reduce数组的第一个元素是一个bson对象,其中包含另一个reduce数组。我处理它的方法是将该数组与外部数组结果相结合。
我不明白为什么会这样,并且找不到任何文件。任何人都可以指出我正确的方向,所以我可以肯定我正在处理这个问题吗?
答案 0 :(得分:2)
http://www.mongodb.org/display/DOCS/MapReduce#MapReduce-ReduceFunction有你的答案(但你必须仔细阅读)。请参阅引用部分:
“请注意,结果文档与map函数发出的文档具有相同的结构。这很重要,因为当针对给定键运行reduce函数时,不保证处理该键的每个值(或者用户名)。实际上,reduce函数可能不止一次运行。“
基本上,reduce不会在每个“键”上“一次性”运行,但可以“逐步”调用以处理已处理结果的新结果。