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的更多相关文章
- mongodb mapreduce使用总结
文章来自本人个人博客: mongodb mapreduce使用总结 大家都知道,mongodb是一个非关系型数据库.也就是说.mongodb数据库中的每张表是独立存在的,表与表之间没有不论什么依赖 ...
- MapReduce 单词统计案例编程
MapReduce 单词统计案例编程 一.在Linux环境安装Eclipse软件 1. 解压tar包 下载安装包eclipse-jee-kepler-SR1-linux-gtk-x86_64.ta ...
- MongoDB MapReduce(转)
MapReduce MapReduce是一种计算模型,简单的说就是将大批量的工作(数据)分解(MAP)执行,然后再将结果合并成最终结果(REDUCE).这样做的好处是可以在任务被分解后,可以通过大量机 ...
- 【Cloud Computing】Hadoop环境安装、基本命令及MapReduce字数统计程序
[Cloud Computing]Hadoop环境安装.基本命令及MapReduce字数统计程序 1.虚拟机准备 1.1 模板机器配置 1.1.1 主机配置 IP地址:在学校校园网Wifi下连接下 V ...
- mongodb~mapreduce的实现特殊逻辑的统计
map reduce的解释 这是一张来自mongodb-mapreduce图示,比较能说明问题
- MongoDB MapReduce学习笔记
http://cnodejs.org/topic/51a8a9ed555d34c67831fb8b http://garyli.iteye.com/blog/2079158 MapReduce应该算是 ...
- 用C#感受MongoDB MapReduce之魅力 转
MapReduce这个名词随着hadoop的用户的增多,越来越被人关注.MapReduce可谓MongoDB之中的亮点,我也想深入了解MapReduce,加上MongoDB操作简单,所以就选择了它.M ...
- MongoDB MapReduce用法简介
Map-Reduce部分:Map-Reduce相当于关系型数据库中的group by,主要用于统计数据之用.MongoDB提供的Map-Reduce非常灵活,对于大规模数据分析也相当实用. 语法 db ...
- MongoDB:MapReduce基础及实例
背景 MapReduce是个非常灵活和强大的数据聚合工具.它的好处是可以把一个聚合任务分解为多个小的任务,分配到多服务器上并行处理. MongoDB也提供了MapReduce,当然查询语肯定是Java ...
- E QUERY [main] SyntaxError: identifier starts immediately after numeric literal mongodb mapReduce 异常分析 集合命名规范
异常信息 repl_test:PRIMARY> db.0917order_totals_b.find()2018-09-28T15:13:03.992+0800 E QUERY [main] S ...
随机推荐
- JDBC连接错误(Illegal mix of collations。。。)
连接java和mysql时出现了这样的报错: java.sql.SQLException: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) ...
- JDK的下载与配置
一.下载JDK 1.进入oracle官网 下载完成后直接运行就能生成jdk文件. 二.配置环境 1.打开环境配置 右击计算机选择属性 选择高级系统数据 点击环境变量 2.配置JAVA_HOME 新建一 ...
- php学习之正则表达式
1.正则表达式基本语法 首先,我们应该了解,两个特殊的符号'^'和'$'. 他们的作用是分别指出一个字符串的开始和结束.例子如下: "^The":表示所有以"The&qu ...
- php学习之重要内置函数
1. require_once()函数 此函数在脚本执行期间包含并执行指定的文件,与require语句类似,唯一区别是如果该文件中的代码已经被包含了,则不会再次包含. require_once()函数 ...
- 第二章 基本图像处理(Image Processing)
主要内容: 图像的表示----介绍图像是如何表示的,以及所有基本操作的作用对象 高斯滤波-----滤波操作的原理与应用 图像金字塔-----高斯和拉普拉斯 边缘检测-----Sobel算子和Lapla ...
- Unity C# 一些关于Camera的心得!
本文原创,转载请注明出处:http://www.cnblogs.com/AdvancePikachu/p/6856374.html 首先,总结了下最近工作中关于摄像机漫游的功能, 脚本如下: Tran ...
- Spring+SpringMVC+MyBatis深入学习及搭建(三)——MyBatis全局配置文件解析
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6874672.html 前面有写到Spring+SpringMVC+MyBatis深入学习及搭建(二)——My ...
- SMD晶振发展和智能手机的普及总是惊人的相似!
其实触屏手机在2002年前后就已经出现了,但那个时候的触屏手机不算是现在的这种智能手机,有人说最早发行触屏手机的是诺基亚,也有人说是苹果还有人认为摩托罗拉.总之众说纷纭,小编那里还太小也并不是很了解, ...
- struts2.1.6教程七、国际化
尽管国际化不是重点内容,但是也有必要了解它的使用.在struts2中国际化有三种级别:分别是针对某个Action的action级别,针对package的package级别,针对webapp的webap ...
- ubuntu16.04 开发环境搭建
1.更换源 sudo gedit /etc/apt/sources.list 2.更新系统 sudo apt-get update sudo apt-get dist-upgrade 3.移动 ...