mongoid,map /减少SUM投票的最佳方式?

时间:2012-06-12 10:05:28

标签: ruby-on-rails-3 mongodb ruby-on-rails-3.1 mongoid

在大数据中按成员计算SUM投票。我想在一个事件中显示SUM投票所有成员(在这个问题中我不使用事件模型)。

获取所有成员SUM投票

首先我使用map / reduce来查找每个成员的总和。 #=>名称结果:'sum_vote'

然后我插入6个新投票的'成员a'和2个新投票的'成员b'。

我不想再读取所有数据,因为它太大了。

我尝试:(IN 2 CASE I USE CACHE Object RESULT)

  1. 使用选项查询运行map / reduce是member_id = member_a.id AND选项输出:{merge:'sum_vote'}。而member_b也是这样做的

  2. 当1票插入时,我通过按键_id(='member_id')查找结果'sum_vote',然后将+1更新为值。

  3. 你好吗?请与我分享一些问题。谢谢:D

1 个答案:

答案 0 :(得分:0)

在map / reduce中有输出类型:'reduce'。这正是我所需要的。

只需使用选项运行第二个map / reduce:query并列出:{reduce:'sum_vote'}

感谢您的关注