MongoDB分布式存储的MapReduce并行查询

2014-11-24 18:59:03 · 作者: · 浏览: 15

  今天介绍如何基于sharding机制进行mapreduce查询。在MongoDB的官方文档中,这么一句话:


  即: map/reduce操作会并行运行在所有的shards上。


  下面我们就用之前这篇文章中白搭建的环境来构造mapreduce查询:


  首先要说的是,基于sharding的mapreduce与非sharding的数据在返回结构上有一些区别,我目前注意到的主要是不支持定制式的json格式的返回数据,也就是下面方式可能会出现问题:


  注意:上面的情况目前出现在了我的测试环境下,如下图:


MongoDB分布式存储的MapReduce并行查询


  就需要改成 return count;


  下面是测试代码,首先是按帖子id来查询相应数量(基于分组查询实例方式):