摘要

上篇文章介绍了count,group,distinct几个简单的聚合操作,其中,group比较麻烦一点。本篇文章将学习mapReduce的相关内容。

相关文章

[MongoDB]入门操作

[MongoDB]增删改查

[MongoDB]count,gourp,distinct

bat

今天突然发现,每次开启mongodb服务端和客户端,太频繁了。所以想了一个办法,把它们弄成批处理命令了。

开启server

@echo off
start cmd /k "cd/d C:\Program Files\MongoDB\Server\3.2\bin&&mongod"

执行后

启动client

@echo off
start cmd /k "cd/d C:\Program Files\MongoDB\Server\3.2\bin&&mongo"

执行后

这里一个小插曲,有些事情,重复做没必要,能省力就省力了。当然有些mongodb可视化客户端工具,更方便。之后将介绍几款常用的工具。

mapReduce

MapReduce这个函数,也是聚合函数的一种,为什么把它单独的列出来,就因为它太复杂了跟group有的一拼。

其实该函数也比较容易记,因为它有两个参数,一个是map,另一个就是Reduce

map

映射函数,在该函数中会调用emit(key,value),集合会按照你指定的key进行映射分组。

reduce

简化函数,会对map分组后的数据进行分组简化,reduce(key,value)中的key就是emit中的key,vlaue为emit分组后的emit(value)的集合。

result:存入的集合名称。

input:传入的document的个数。

reduce:此函数被调用的次数。

emit:此函数被调用的次数。

output:输出的结果个数。

然后就可以在result上面进行查询按name分组后的结果了。

关于cmd中输入命令换行的问题,这里也简单的介绍一下,比如上面的map和reduce函数非常长,那么我们可以进行换行进行输入,技巧:输入的时候,不要输入结束符号就可以,比如function的结束符号为},只要不输人},回车的时候,会打印...,这个时候你可以接着输入。

我们通过换行进行上面的mapReduce操作。

这样看着更舒服了。

总结

关于mapReduce的内容,非常多,这里只是列举了mapReduce的使用方法。更多的内容可以参考下面的文章

MapReduce百度百科

http://www.cnblogs.com/daizhj/archive/2010/06/10/1755761.html

http://www.cnblogs.com/huangxincheng/archive/2012/02/21/2361205.html

http://www.cnblogs.com/loogn/archive/2012/02/09/2344054.html

[MongoDB]mapReduce的更多相关文章

  1. MongoDB MapReduce(转)

    MapReduce MapReduce是一种计算模型,简单的说就是将大批量的工作(数据)分解(MAP)执行,然后再将结果合并成最终结果(REDUCE).这样做的好处是可以在任务被分解后,可以通过大量机 ...

  2. mongodb mapreduce使用总结

    文章来自本人个人博客: mongodb mapreduce使用总结 ​ 大家都知道,mongodb是一个非关系型数据库.也就是说.mongodb数据库中的每张表是独立存在的,表与表之间没有不论什么依赖 ...

  3. MongoDB MapReduce学习笔记

    http://cnodejs.org/topic/51a8a9ed555d34c67831fb8b http://garyli.iteye.com/blog/2079158 MapReduce应该算是 ...

  4. 用C#感受MongoDB MapReduce之魅力 转

    MapReduce这个名词随着hadoop的用户的增多,越来越被人关注.MapReduce可谓MongoDB之中的亮点,我也想深入了解MapReduce,加上MongoDB操作简单,所以就选择了它.M ...

  5. MongoDB MapReduce用法简介

    Map-Reduce部分:Map-Reduce相当于关系型数据库中的group by,主要用于统计数据之用.MongoDB提供的Map-Reduce非常灵活,对于大规模数据分析也相当实用. 语法 db ...

  6. MongoDB:MapReduce基础及实例

    背景 MapReduce是个非常灵活和强大的数据聚合工具.它的好处是可以把一个聚合任务分解为多个小的任务,分配到多服务器上并行处理. MongoDB也提供了MapReduce,当然查询语肯定是Java ...

  7. 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 ...

  8. mongodb~mapreduce的实现特殊逻辑的统计

    map reduce的解释 这是一张来自mongodb-mapreduce图示,比较能说明问题

  9. MongoDB MapReduce 的示例。

    // JavaScript source code db.runCommand({ mapreduce: "page", map: function Map() { emit( t ...

随机推荐

  1. perl 箭头操作符

    箭头操作符有两种用法. 第一种用法是访问引用中的数据元素: #!/usr/bin/perl -w use strict; my @a = (5, 6, 7,9); my $aref = \@a; pr ...

  2. 在Eclipse中如何关联spring-framework的文档和源代码

    1.到官方网站去下载spring-framework的jar包 spring-framework jar包的下载地址是:http://repo.spring.io/release/org/spring ...

  3. bzoj1113: [Poi2008]海报PLA

    #include <iostream> #include <cstdio> #include <cstring> #include <cmath> #i ...

  4. Stream篇

    本文转自: http://www.cnblogs.com/JimmyZheng/archive/2012/03/17/2402814.html 什么是Stream? 什么是字节序列? Stream的构 ...

  5. CommonJS/AMD/CMD/UMD概念初探

    1.CommonJS是一种规范,NodeJS是这种规范的实现. 1.1.CommonJS 加载模块是同步的,所以只有加载完成才能执行后面的操作. 参考: http://www.commonjs.org ...

  6. Android NDK学习之第一个实例---端口扫描

    为什么要写一个端口扫描的程序,Java来写不是很方便吗?因为我也没有想到什么例子能够方便的来练习.于是想到以前找到的端口扫描的C代码,于是想用他们来练习.扫描服务端端口的方式有许多种,最简单的就是直接 ...

  7. [iOS OpenCV的使用,灰度和二值化]

    看网上方法很多,但版本都不够新,我看了网上一些知识,总结了下,来个最新版Xcode6.1的. 最近主要想做iOS端的车牌识别,所以开始了解OpenCV.有兴趣的可以跟我交流下哈. 一.Opencv的使 ...

  8. (原)Java初始化过程

    先看一个demo,然后进行归纳. class X{ static M m=new M(); Y y=new Y(); public X(){ System.out.print("X" ...

  9. android播放器如何获取音乐文件信息

    转http://blog.csdn.net/hellofeiya/article/details/8464356, android自带的音乐播放器中,在获取音乐文件信息的时候是通过扫描得到相关信息的. ...

  10. 第六次作业——利用MFC实现计算器图形界面以及简单四则运算表达式批处理

    参考资料:      1.MFC响应键盘      2.计算器实例      3.MFC文件对话框      4.MFCUpdateData()函数的使用      5.MFC教程      6.wi ...