我正在使用pymongo使用的mapreduced函数来获得结果,但我希望类似MapReduce的组有其他选择 “标记”:[“MongoDB”、“映射/减少”、“配方”] m=Code(“函数(){”this.tags.forEach(函数(z){”emit(z,1);“}”);“}”) r=Code(“函数(键,值){var count=0;for(var i=0;i
我可以得到正确的结果,上述代码,但我需要为这个替代解决方案。我正在使用pymongo使用的mapreduced函数来获得结果,但我希望类似MapReduce的组有其他选择 “标记”:[“MongoDB”、“映射/减少”、“配方”] m=Code(“函数(){”this.tags.forEach(函数(z){”emit(z,1);“}”);“}”) r=Code(“函数(键,值){var count=0;for(var i=0;i,mongodb,count,pymongo,Mongodb,Count,Pymongo,我可以得到正确的结果,上述代码,但我需要为这个替代解决方案。 因为map\u减少了在我的数据库中创建更多集合 如果不希望映射reduce的结果持久化,请使用而不是map\u reduce: "tags" : ["MongoDB", "Map/Reduce", "Recipe"] m = Code("function () {"" this.tags.forEach(function(z) {"" emit(z, 1);"" });""}") r = Code("function (
因为
map\u减少了在我的数据库中创建更多集合 如果不希望映射reduce的结果持久化,请使用而不是map\u reduce
:
"tags" : ["MongoDB", "Map/Reduce", "Recipe"]
m = Code("function () {"" this.tags.forEach(function(z) {"" emit(z, 1);"" });""}")
r = Code("function (key, values) {var count = 0;for (var i = 0; i < values.length; i++) {count += values[i];}return count;}")
db.coll.map_reduce(m,r, out = "map_tags",query={"tags": {"$ne": ''},"organization":orgid},safe=True)
请注意,只有当结果集符合单个文档的16MB限制时,才能使用此方法
results = db.coll._inline_map_reduce(m, r, query={"tags": {"$ne": ''}, "organization":orgid}, safe=True)