【问题标题】:MongoEngine map_reduce merge collectionsMongoEngine map_reduce 合并集合
【发布时间】:2012-08-03 19:01:10
【问题描述】:

我在 python 中使用 MongoEngine map_reduce 功能。

根据位于 here 的 MongoDB 文档,可以指定处理缩减数据的方式。具体来说,可以为“替换”、“合并”、“减少”或执行“内联”映射/减少提供参数。

我找不到有关如何为 MongoEngine map_reduce 函数指定类似参数的说明。该函数的文档可以在here找到。

谁能解释我如何将 map_reduce 操作的结果合并到一个已经存在的集合中?我无法内联执行 map_reduce 操作。

我正在使用以下代码来执行 map_reduce 操作:

map_f = """
    #javascript code
"""

reduce_f = """
    #javascript code
"""

for i in FOO.objects.map_reduce(map_f, reduce_f, "FOOResult"):
    pass

上面,“FOOResult”是一个新的集合,每次执行 mapreduce 操作时都会覆盖一个特定的键。我宁愿指定一些东西,允许我将相同的键插入到已经存在的集合中。

感谢您的帮助。

【问题讨论】:

    标签: python mongodb mapreduce mongoengine


    【解决方案1】:

    嗯,不认识这个我觉得有点傻。

    解决方案:

    for i in FOO.objects.map_reduce(map_f, reduce_f, {"merge":"COLLECTION_NAME"}):
        pass
    

    【讨论】:

    • 干得好 - 请标记为已回答以帮助他人,如果您有时间,请向github.com/MongoEngine/mongoengine 添加票证,建议文档更清晰:)
    • 谢谢!我刚刚添加了一张问题单。我会将解决方案标记为已解决,但我必须等待 48 小时才能这样做(显然这是堆栈溢出策略?)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多