资讯专栏INFORMATION COLUMN

mongodb mapReduce implementation rationale

fox_soyoung / 1163人阅读

摘要:这两个涵数是怎么关联操作的,经过多次实验,终于是破开云雾见天晴了与其说中的是把信息提交给倒不如说是与只是在操作同一个,这样来理解的方便。

data-struct:
{"bookname":"bname1","battr":"bookattr1","scores" : [ { "userid" : "user1", "score" : 3 }, { "userid" : "user2", "score" : 4 } ]}

var m=function(){
    for(var i=0;i

map reduce 这两个涵数是怎么关联操作的,经过多次实验,终于是破开云雾见天晴了

与其说 map 中的 emit 是把信息提交给 reduce 倒不如说是 map 与 reduce 只是在操作同一个collection,这样来理解的方便。
out:这个参数就是用于生成实际文件文档的还是在内存中形成的文档
可以理解成比如:从book中先选择出你相要的数据,可以通过 map 这个凾数进行分组 emit() 这个凾数就是干这个用的,然后它会根据 out 这个参数在什么地方生成一个 collection
out:"tmp" 等于是新建了一个 collection 里面的数据就是通 map 分组了的数据。

分组后的 collection 只会包含两个字段,一个是 "_id" 一个就是 "value" ,这两个字段的值就是 emit("","") 这个凾数的第一个参数与第二个参数,
比如上面的代码分组后的文档内容就是:

{"_id":"user1","value":[{"count":1,"scour":},{"count":1,"score":}]}
{"_id":"user2","value":[{"count":1,"scour":},{"count":1,"score":}]}
...
...

等等
等于就是把从book中搜出来的数据,按emit("","") 这个凾数中的每一个参数,把这个参数中的所有的内容已数组的形式重新组合了一下.

reduce 这个凾数等于就是操作 map 凾数执行后生成的 collection 的内容.

finalize 这个涵数就是可以更进一步的操作 collecton 中的内容

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/18709.html

相关文章

  • Android优雅地申请动态权限

    摘要:是权限被拒绝,但是没有勾选不再提醒。这样被拒绝后再次申请权限是不会弹框提醒的。用户点击拒绝,并勾选不再提示,下次请求权限时,系统弹窗不会再出现,而且为,此时你的权限申请被用户彻底拒绝,需要跳转到系统设置页手动允许权限。 版权声明:本文已授权微信公众号:Android必修课,转载请申明出处Android6.0以上的系统中,引入了运行时权限检查,运行时权限分为正常权限和危险权限,当我们的...

    hedzr 评论0 收藏0
  • Spring Boot 中使用 MongoDB 增删改查

    摘要:声明构造函数,作用是把从数据库取出的数据实例化为对象。该构造函数传入的值为从中取出的数据省略接口提供增删改查接口实现提供增删改查接口实现提供了一个类似于的设计的类。 本文快速入门,MongoDB 结合SpringBoot starter-data-mongodb 进行增删改查 1、什么是MongoDB ? MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。...

    ranwu 评论0 收藏0
  • The Power of Ten – Rules for Developing Safety Cri

    摘要:探测器的代码就是写的,真厉害 New Horizon 探测器的代码就是 JPL 写的,真厉害 http://pixelscommander.com/wp-content/uploads/2014/12/P10.pdf Gerard J. Holzmann NASA/JPL Laboratory for Reliable Software Pasadena, CA 91109 Mo...

    Muninn 评论0 收藏0
  • MongoDBMapReduce使用

    摘要:本文我们就来看看中的使用。结果如下钱钟书宋诗选注谈艺录鲁迅彷徨实现我们也可以利用命令来执行。 玩过Hadoop的小伙伴对MapReduce应该不陌生,MapReduce的强大且灵活,它可以将一个大问题拆分为多个小问题,将各个小问题发送到不同的机器上去处理,所有的机器都完成计算后,再将计算结果合并为一个完整的解决方案,这就是所谓的分布式计算。本文我们就来看看MongoDB中MapRedu...

    Near_Li 评论0 收藏0

发表评论

0条评论

fox_soyoung

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<