草庐IT

mapReduce

全部标签

mongodb 获取分组的最新日期

我有表格中的数据{userid:123,actiontype:'loggedin',timestamp:date-time}我想运行一个查询,该查询将针对userid和actiontype的唯一组合对数据进行分组,并返回具有最新时间戳值的文档。有什么办法可以做到这一点吗?目前我正在考虑进行查找,然后将返回值放入数组(python和pymongo)中,然后在那里进行操作。但是,我觉得直接在mongodb上执行此操作会更加优雅/高效。 最佳答案 您可以使用Mongogroupfunction.来完成以下代码显示了如何执行此操作。db.s

javascript - MongoDB 计算对象内的对象

我想知道对象内部有多少个元素。我的收藏如下:{"_id":'xxx',"comments":{"_id_ab6666djdkjd":{"text":"mytext"},"_id_ab6dee":{"text":"mytext2"}}},{"_id":'xxx',"comments":{"_id_ab6666dddjdkjd":{"text":"mytext"}}}我想统计所有文档中的评论?我知道在评论中使用数组是最佳做法,但我无法更改架构设计。最好的,洛伦佐 最佳答案 去找你的老板,告诉他们我让他们“改变设计”。这是你应该告诉他们的

regex - 使用正则表达式从 MongoDB 中提取子字符串列表

我需要提取与正则表达式匹配的字符串的一部分并将其返回。我有一组文档,例如:{"_id":12121,"fileName":"apple.doc"},{"_id":12125,"fileName":"rap.txt"},{"_id":12126,"fileName":"tap.pdf"},{"_id":12126,"fileName":"cricket.txt"},我需要提取所有文件扩展名并返回{".doc",".txt",".pdf"}。我正在尝试使用$regex运算符来查找子字符串并聚合结果,但无法提取所需的部分并将其传递到管道中。我试过类似的东西但没有成功:aggregate([{

mongodb - mongoDB 中具有时间间隔的增量 MapReduce

我以10分钟的时间间隔从服务器获取了一些记录(在1小时内我将获取6个文件)我想在接下来的几个小时内每1小时做一次mapreduce我将不得不对6个文件和最后几个小时的文件进行下一组的mapreduce我将如何解决这个问题?帮我我混淆了过去1个月谢谢苏希尔·克尔·辛格 最佳答案 为了按小时汇总您的10分钟日志文件,您可以在map函数中将每个日志文件的时间戳舍入到最接近的小时,并在reduce函数中按小时对结果进行分组。这是一个小的虚拟示例,它从mongoshell中说明了这一点:创建100个日志文件,每个间隔10分钟并包含一个0-10

hadoop学习:mapreduce入门案例二:统计学生成绩

这里相较于wordcount,新的知识点在于学生实体类的编写以及使用数据信息:1.Student实体类importorg.apache.hadoop.io.WritableComparable;importjava.io.DataInput;importjava.io.DataOutput;importjava.io.IOException;publicclassStudentimplementsWritableComparable{//Objectprivatelongstuid;privateStringstuName;privateintscore;publicStudent(longs

mongodb - MongoDB 的 Map/Reduce 排序有用吗?

如果使用下面的Analytic.collection.map_reduce(map,reduce,:query=>{:page=>subclass_name},:sort=>[[:pageviews,Mongo::DESCENDING]]).find.to_a它不会按pageviews排序。或者,如果它是哈希数组:Analytic.collection.map_reduce(map,reduce,:query=>{:page=>subclass_name},:sort=>[{:pageviews=>Mongo::DESCENDING}]).find.to_a也不行。我认为它必须是一个数

node.js - Mongo NodeJS 映射减少

无法正常工作..我在这里缺少什么..NodeJS,Mongoskin..我无法获得mapreduce的结果。数据库和集合似乎没问题。varmongo=require('mongoskin');vardb=mongo.db('localhost:27017/testdb?auto_reconnect=true&poolSize=5');db.collection('users');db.bind('users');db.users.find().sort({userid:-1}).skip(0).limit(0).toArray(function(err,users){//console

javascript - 根据排序顺序获取文档在集合中的位置

我是MongoDB(+Mongoose)的新手。我有一个高分集合,其中包含如下所示的文档:{id:123,user:'User14',score:101}{id:231,user:'User10',score:400}{id:412,user:'User90',score:244}{id:111,user:'User12',score:310}{id:221,user:'User88',score:900}{id:521,user:'User13',score:103}+thousandsmore...现在我像这样获得前5名玩家:highscores.find().sort({'sco

MongoDB:使用 Map/Reduce 聚合数据

我仍然不完全理解map/reduce是如何工作的,所以我想举一个我需要解决的问题的例子,希望答案能帮助我理解这个概念。我正在使用与此类似的文档结构来跟踪页面浏览量:{"timestamp":1299990045,"visitor":{"region":{"country_code":"US",},"browser":{"name":"IE","version":"8.0",}},"referer":{"host":"www.google.com","path":"/","query":"q=map%2Freduce"}}我为每个页面View存储一个文档。因为我每天获得大约1500万的页

mongodb - Mongo 用户定义函数和 Map Reduce

在mongo中有没有一种方法可以创建用户定义的Javascript函数。我在客户端有几个Map/Reduce函数,我想在其他MR函数中使用它们。例如,几个MR函数计算各种平均值。我希望能够像这样使用它们:functionreduce(k,v){if(val>myDatabaseAverage())//..dosomething} 最佳答案 使用db.system.js.save({_id:"myDatabaseAverage",value:function(){//..dosomething}});这会将JS函数存储在服务器上,并且