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

标签 mongodb mapreduce mongoid

如果使用下面的

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

也不行。我认为它必须是一个数组的原因是指定要排序的第一个字段等。我也尝试了一个平面数组而不是像上面列出的第一个代码中的数组数组,但它也没有用.

它不工作吗?这是规范:http://api.mongodb.org/ruby/current/Mongo/Collection.html#map_reduce-instance_method

最佳答案

你想做什么?排序实际上仅与限制结合使用:它在 map 之前应用,因此您可以只对最新的 20 个项目或其他内容进行 MapReduce。如果您尝试对结果进行排序,只需对输出集合进行常规排序即可。

关于mongodb - MongoDB 的 Map/Reduce 排序有用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3764493/

相关文章:

mongodb - 更新 Mongodb 中的嵌入文档属性

javascript - 防止 MeteorJS 集合中的口是心非(通过表单)

java - 我们可以为 FileInputFormat 自定义 InputSplit 大小吗?

javascript - MongoDB计算不同的值(value)?

java - hadoop textinputformat 每个文件只读一行

recursion - 递归函数的网络模拟是什么?

ruby-on-rails-3 - Heroku 和 MongoHQ: ActionView::Template::Error (操作: #<Moped::Protocol::Commands::Authenticate 失败,错误 "auth fails")

jquery - rails : Saving an ordered list with empty values

mongoid - MongoDB一直在崩溃

node.js - Mongoose 错误 : Arguments must be aggregate pipeline operators