私はページネーションについて少し研究しました、そして私が読んだことからそれをすることの2つの矛盾した解決策があります
ユーザーが次をクリックするたびにデータベースからデータの小さなセットをロードします問題-WHERE条件を満たす100万行があるとします。つまり、100万行が取得、保存、ファイルソートされた後、それらのほとんどが破棄され、20行のみが取得されます。ユーザーが[次へ]ボタンをクリックすると、同じプロセスが再度発生し、異なる20のみが取得されます。(参照-http ://www.mysqlperformanceblog.com/2008/09/24/four-ways-to-optimize-paginated -displays /)
データベースからすべてのデータをロードしてキャッシュします...これにもここで言及されている問題はほとんどありません-http ://www.javalobby.org/java/forums/t63849.html
だから私は両方のハイブリッドを使用する必要があることを知っています..しかし、質問は要約すると-どちらの操作がより高価です-データベースでデータの小さなチャンクに対して繰り返しクエリを実行するか、ネットワークを介して大きな結果セットを転送します