首页 > 数据库技术 > 详细

mongdb mapReduce聚合操作

时间:2019-01-06 20:36:59      阅读:164      评论:0      收藏:0      [点我收藏+]

1、数据准备

请看group操作

 

2、mapReduce名词解释

mapReduce 随着"大数据"概念而流行.其实mapReduce的概念非常简单,从功能上说,相当于RDBMS的 group 操作

mapReduce的真正强项在哪?
答:在于分布式,当数据非常大时,像google,有N多数据中心,数据都不在地球的一端,用group力所不及.

group既然不支持分布式,单台服务器的运算能力必然是有限的.而mapRecuce支持分布式,支持大量的服务器同时工作,用蛮力来统计.

mapRecuce的工作过程:
  map-->映射
  reduce->归约

map: 先是把属于同一个组的数据,映射到一个数组上.cat_id-3 [23,2,6,7]
reduce: 把数组(同一组)的数据,进行运算.

 

3、mapReduce实操

1、用mapReduce计算每个栏目的库存总量
map函数
var map = function() {
    emit(this.cat_id,this.goods_number);
    }
var reduce = function(cat_id,numbers) {
    return Array.sum(numbers);
}
db.goods.mapReduce(map,reduce,{out:‘res‘});

2、用mapReduce计算每个栏目下商品的平均价格
var map = function() {
    emit(this.cat_id,this.shop_price);
    }
var reduce = function(cat_id,values) {
    return Array.avg(values);
}
db.goods.mapReduce(map,reduce,{out:‘res‘});

 

 mapReduce详细解析可以查看:https://www.cnblogs.com/chenpingzhao/p/7913247.html

mongdb mapReduce聚合操作

原文:https://www.cnblogs.com/ywjfx/p/10230146.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!