performance - Mongodb聚合框架比map/reduce更快吗?

标签 performance mongodb mapreduce aggregation-framework

mongodb 2.2引入的聚合框架,相比map/reduce有什么特别的性能提升吗?

如果是,为什么以及如何以及多少钱?

(我自己已经做过测试,性能差不多)

最佳答案

我亲自运行的每个测试(包括使用您自己的数据)都表明聚合框架比 map reduce 快几倍,并且通常快一个数量级。

只取您发布的数据的 1/10(但不是清除操作系统缓存,而是先预热缓存 - 因为我想测量聚合的性能,而不是需要多长时间来分页数据)我得到了这个:

MapReduce:1,058 毫秒
聚合框架:133ms

从聚合框架中删除 $match 和从 mapReduce 中删除 {query:} (因为两者都只使用索引,这不是我们想要测量的)并按我得到的 key2 对整个数据集进行分组:

MapReduce:18,803 毫秒
聚合框架:1,535ms

这些和我之前的实验非常吻合。

关于performance - Mongodb聚合框架比map/reduce更快吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13908438/

相关文章:

node.js - 在 MongoDB 中查找不符合条件的记录

hadoop - 从 Hadoop 子目录处理数据文件

hadoop - 仅限Hadoop map 作业

php - 如何在字符串中搜索数千个可能的关键字

Android Studio 显示警告 inotify limit is too low

mongodb - mgo $unwind 聚合结果到未知元素种类 (0x2E)

c# - MongoDb 传递谓词参数

java - Hadoop - 查找 IP 命中总数和唯一 IP 地址,然后找到平均值(总 IP 命中数/uniqueIP)

performance - R:为什么 [[ ]] 方法比使用 $ 更快地对列表进行子集化?

java - Hazelcast 执行速度较慢