次のURLに応答して、クエリの結果を提供する必要があります。
http://foo.com/search?from=20&perpage=10
パフォーマンスの観点からのベストプラクティスは何ですか?
WHERE行>Nおよび行<=Kで毎回クエリを実行します
クエリを1回実行し、すべての結果を一定期間保持します
他に何ができるでしょうか?
次のURLに応答して、クエリの結果を提供する必要があります。
http://foo.com/search?from=20&perpage=10
パフォーマンスの観点からのベストプラクティスは何ですか?
WHERE行>Nおよび行<=Kで毎回クエリを実行します
クエリを1回実行し、すべての結果を一定期間保持します
他に何ができるでしょうか?
クエリで生成されるデータ量が非常に少ない場合は、結果をキャッシュすることを検討できます。しかし、これについて考えてください:
次に、私の答えは毎回クエリを実行します。あなたのデータベースはあなたよりもそれをうまく処理し、あなたのデータに合わせてスケーリングします(そうでなければ、システムに1000000レコードがあると、500レコードで機能する可能性のあるものが壊れます)。
要約すると、データベースエンジンは、データをキャッシュするのに私たちよりも効率的であり、拡張性も高くなります。(通常)優れたインデックスは、パフォーマンスを向上させるために必要なすべてです。