Map/Reduce の結果を永続的に保存できるが、並べ替えはできないというのは本当ですか? 例えば、
coll = Analytic.collection.map_reduce(map, reduce,
:out => 'analyticsCachedResult')
上記は永続的に保存されますが、ソートされません。
その場で並べ替えるには、
coll.find({}, :sort => ['value.pageviews', :desc])
しかし、テーブルを内部的にソートできますか? ソートキーにインデックスを作成すれば、内部でソートするのとほぼ同じくらいうまくいくのではないでしょうか?
または、どのように並べ替えて、新しいコレクションとして保存できますanalyticsSortedCachedResult
か?
後で、Mongoid を使用してコレクションを取得するには、
coll = Mongoid.master.collection('analyticsCachedResult')
? Mongoid.master.collection('foo')
しかし、コレクションが存在しなくてもコレクションが返されるのではないかと心配しています。しかし、MongoDB にも保存されていないようです。