首页 > 代码库 > MongoDB--MapReduce分布统计s
MongoDB--MapReduce分布统计s
MapReduce
Mapreduce:要操作的目标集合
Map:映射函数(生成键值对序列,作为reduce函数参数) //传入分组的key和需要统计的值
Reduce:统计函数 //格式化返回的参数对象
Query:目标记录过滤 //在mp之前对查询过滤条件
Sort:目标记录排序
Limit:限制目标记录数量
Out:统计结果存放集合(不指定使用临时集合,在客户端断开后自动删除)// 将结果输出到某张表内
Keeptemp:是否保留临时集合
Finalize:最终处理函数(对reduce返回结果进行最终整理后存入结果集合) //对结果进行处理
Scope:向map、reduce、finalize导入外部变量
Verbose:显示详细的时间统计信息。
数据结构:
db.runCommand({ mapreduce:"students", map:function(){ emit(this.classid,this.name); }, reduce:function(key,values){ var res={classid:key,names:values} return res; }, query:{"age":{"$gt":10}}, finalize:function(key,reducevalues){ var obj={}; obj.keyname=key; obj.values=reducevalues.names; return obj; }, out:"test_mp2" })
db.runCommand({ mapreduce:"students", map:function(){ emit(this.classid,this.name); }, reduce:function(key,values){ return values.length; }, query:{"age":{"$gt":10}}, out:"test_mp2" })
针对第二个统计步骤为:
MongoDB--MapReduce分布统计s
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。