offset の制限値を考慮したレコード一括取得について
の対応についてお教えください
現在対象のアプリには10万超のレコードがあります。
このアプリに対して、レコードの抽出を行っています。
もう1つは、https://developer.cybozu.io/hc/ja/articles/203030394-%E9%96%A2%E9%80%A3%E3%83%AC%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E9%A0%85%E7%9B%AE%E3%82%92%E6%9D%A1%E4%BB%B6%E4%BB%98%E3%81%8D%E3%81%A7%E9%9B%86%E8%A8%88
を参考に、抽出したデータの件数(時間)をカウントしています。
ともにoffsetは0としていますが、警告がでています。
offset の制限値を考慮したレコード一括取得の対応については3つの方法が記載されています。
方法1: レコード ID を利用する方法
レコードの並びは関係ないのでこちらが利用可?
方法2: カーソル API を利用する方法
10以上の同時アクセスが想定されるので不可?
方法3: offset を利用する方法
数値をカウントするのでoffsetが0以外は不可
※現在はこれでエラーが発生している。
方法としては、1が考えられるのですが、今回の場合
「order by $id asc」のみ追加すれば現象が改善されるとみて
よいのでしょうか?
それとも他に、何か得策はありますでしょうか?
0件のコメント