为了账号安全,请及时绑定邮箱和手机立即绑定

[MongoDB]mapReduce

标签:
SQL Server

摘要

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

相关文章

[MongoDB]入门操作

[MongoDB]增删改查

[MongoDB]count,gourp,distinct

bat

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

开启server

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

执行后

启动client

@echo offstart 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

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消