5

[次のページ]ボタンと[前のページ]ボタンを使用して結果ページを作成する場合、カーソルを使用してこれを行う場合とオフセットを使用する場合のコストの違いは何ですか?そして、各テクニックの長所と短所は何ですか?

具体的な例として、結果100〜110を読み取るためのコストはどのくらいですか。

オフセットが「小さなデータストア操作」を使用しているという主張や、スキップされたエンティティごとに完全な「読み取り操作」を使用しているという主張を見てきました。

カーソルを使用して、逆方向にページングできないことを読みましたが、今日初めて新しいCursor.reverse()メソッドに気づきました。

カーソルを使用することの欠点は、番号でページにジャンプできないこと、たとえば結果90〜100に直接ジャンプできないことだと思います。

4

1 に答える 1

6

結果をスキップすると、スキップされた結果ごとにデータストアの小さな操作が発生します。また、カーソルを使用するよりも遅くなります。

ご覧のとおり、クエリに適切なインデックスが存在する限り、逆方向のカーソルを使用できるようになりました。

もちろん、ページ 'n' にスキップしたい場合は、カーソルとオフセットの両方を組み合わせることができます。

于 2012-04-24T04:51:31.960 に答える