50 万行のモデルでレコードを並べ替えようとしています。最初にこの手順を試みたとき、レコードは 200 しかありませんでした。次のコードを使用し、レコード 1 ~ 5 を引き出して、最も人気のあるレコードをリストしました。
@mostpopular = Product.find(:all, :order => 'click_count DESC')
しかし、今でははるかに大きなデータセットがあり、これによりコンピューターが停止してしまい、より効率的な方法で検索を完了しようとしています.
コードを調整してみまし@mostpopular = Product.order('click_count DESC').limit(10)
たが、完了するまでに長い時間がかかります...
大規模なデータセットから最も人気のある上位 10 件のレコードを効率的に抽出する方法はありますか?
御時間ありがとうございます