首页 > 数据库 > mysql教程 > MongoDB中使用MapReduce进行分组统计

MongoDB中使用MapReduce进行分组统计

WBOY
发布: 2016-06-07 16:45:56
原创
1276 人浏览过

MongoDB中使用MapReduce进行分组统计 最近在统计某一个时间段的url去重数,由于数据量巨大导致报错,提示: distinct failed: {

MongoDB中使用MapReduce进行分组统计

最近在统计某一个时间段的url去重数,,由于数据量巨大导致报错,提示:

distinct failed: {

"errmsg" : "exception: distinct too big, 16mb cap",

"code" : 17217,

"ok" : 0

} at src/mongo/shell/collection.js:1108


经过查阅资料,最终通过mapreduce来解决如下:

//定义map函数

map=function(){

    emit(this.url,{"count":1});

}

//定义reduce函数

reduce=function(key,values){

    var total=0;

    for(var i=0; i

        total+=values[i].count;

    }

    return {count:total}

}

//执行mapreduce函数,其中out的值是存储执行结果的集合

db.runCommand({"mapreduce":"visit","map":map,"reduce":reduce,"query":{"vtime":{"$gte":1412611200,"$lte":1413907119}},"out":"test.tmp"});

CentOS编译安装MongoDB

CentOS 编译安装 MongoDB与mongoDB的php扩展

CentOS 6 使用 yum 安装MongoDB及服务器端配置

Ubuntu 13.04下安装MongoDB2.4.3

MongoDB入门必读(概念与实战并重)

Ubunu 14.04下MongoDB的安装指南

《MongoDB 权威指南》(MongoDB: The Definitive Guide)英文文字版[PDF]

Nagios监控MongoDB分片集群服务实战

基于CentOS 6.5操作系统搭建MongoDB服务

MongoDB 的详细介绍:请点这里
MongoDB 的下载地址:请点这里

本文永久更新链接地址:

本文永久更新链接地址:

linux

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板