我有一个map reduce,每小时在我的服务器上作为cronjob运行。我遇到了一个错误,阻止地图减少完成。这通常发生在我在本地运行map reduce脚本时,它与服务器上的map reduce同时发生冲突。还有一些情况我在发生错误时作为服务器作业在不同的时间本地运行它。错误是
errmsg: "exception: rename failed: { errmsg: "exception: target namespace exists", code: 10027, ok: 0.0 }", code: 10076, ok: 0.0 }
此错误阻止我删除集合以及运行我的脚本以写入当前缩减的集合。你知道如何防止这种情况发生或解决问题,以便我可以删除集合
这是我用来运行map reduce
的命令articles.map_reduce(map, reduce, "articleTrending", query=queryFilter)
答案 0 :(得分:1)
不是将“articleTrending”作为“out”参数传递,而是听起来像是要“替换”该集合。所以你可以这样做:
articles.map_reduce(map, reduce, {"replace": "articleTrending"}, query=queryFilter)
如何处理mapReduce输出有很多选项。官方MongoDB文档为“out”are here。有一些python examples here。