スクロールAPI

深いページネーションのためにスクロールAPIの使用を推奨しなくなりました。10,000件以上のヒットをページングする際にインデックスの状態を保持する必要がある場合は、ポイントインタイム(PIT)を使用してsearch_afterパラメータを使用してください。

次のsearch_after検索の結果のバッチを取得します。

Python

  1. resp = client.scroll(
  2. scroll_id="DXF1ZXJ5QW5kRmV0Y2gBAAAAAAAAAD4WYm9laVYtZndUQlNsdDcwakFMNjU1QQ==",
  3. )
  4. print(resp)

Js

  1. const response = await client.scroll({
  2. scroll_id: "DXF1ZXJ5QW5kRmV0Y2gBAAAAAAAAAD4WYm9laVYtZndUQlNsdDcwakFMNjU1QQ==",
  3. });
  4. console.log(response);

コンソール

  1. GET /_search/scroll
  2. {
  3. "scroll_id" : "DXF1ZXJ5QW5kRmV0Y2gBAAAAAAAAAD4WYm9laVYtZndUQlNsdDcwakFMNjU1QQ=="
  4. }

リクエスト

GET /_search/scroll/<scroll_id> [7.0.0] 7.0.0で非推奨。

GET /_search/scroll

POST /_search/scroll/<scroll_id> [7.0.0] 7.0.0で非推奨。

POST /_search/scroll

前提条件

  • Elasticsearchのセキュリティ機能が有効になっている場合、ターゲットデータストリーム、インデックス、またはエイリアスに対してreadインデックス権限を持っている必要があります。

説明

スクロールAPIを使用して、単一のscrollリクエストから大規模な結果セットを取得できます。

スクロールAPIはスクロールIDを必要とします。スクロールIDを取得するには、scrollクエリパラメータの引数を含むscrollリクエストを送信します。scrollパラメータは、Elasticsearchがリクエストのscroll検索コンテキストを保持する期間を示します。

検索応答は、_scroll_id応答ボディパラメータにスクロールIDを返します。次に、スクロールIDを使用してスクロールAPIでリクエストの次の結果バッチを取得できます。Elasticsearchのセキュリティ機能が有効になっている場合、特定のスクロールIDの結果へのアクセスは、scroll検索を送信したユーザーまたはAPIキーに制限されます。

また、スクロールAPIを使用して、検索コンテキストの保持期間を延長または短縮する新しいscrollパラメータを指定することもできます。

scrollを参照してください。

スクロール検索の結果は、初回検索リクエスト時のインデックスの状態を反映しています。その後のインデックス作成やドキュメントの変更は、後の検索およびスクロールリクエストにのみ影響します。

パスパラメータ

  • <scroll_id>
  • [7.0.0] 7.0.0で非推奨。 (オプション、文字列)検索のスクロールID。
    スクロールIDは長くなる可能性があります。scroll_idリクエストボディパラメータを使用してのみスクロールIDを指定することをお勧めします。

クエリパラメータ

  • scroll
  • (オプション、scroll)スクロールのscroll検索コンテキストを保持する期間。scrollを参照してください。
    この値は、元の検索APIリクエストのscrollパラメータで設定された期間を上書きします。
    デフォルトでは、この値は1d(24時間)を超えることはできません。この制限は、search.max_keep_aliveクラスター設定を使用して変更できます。
    この値は、scrollリクエストボディパラメータを使用して指定することもできます。両方のパラメータが指定されている場合、クエリパラメータのみが使用されます。
  • scroll_id
  • [7.0.0] 7.0.0で非推奨。 (オプション、文字列)検索のスクロールID。
    スクロールIDは長くなる可能性があります。scroll_idリクエストボディパラメータを使用してのみスクロールIDを指定することをお勧めします。
  • rest_total_hits_as_int
  • (オプション、ブール値)trueの場合、API応答のhit.totalプロパティは整数として返されます。falseの場合、API応答のhit.totalプロパティはオブジェクトとして返されます。デフォルトはfalseです。

リクエストボディ

  • scroll
  • (オプション、scroll)スクロールのscroll検索コンテキストを保持する期間。scrollを参照してください。
    この値は、元の検索APIリクエストのscrollパラメータで設定された期間を上書きします。
    デフォルトでは、この値は1d(24時間)を超えることはできません。この制限は、search.max_keep_aliveクラスター設定を使用して変更できます。
    この値は、scrollクエリパラメータを使用して指定することもできます。両方のパラメータが指定されている場合、クエリパラメータのみが使用されます。

  • scroll_id
  • (必須、文字列)検索のスクロールID。

スクロールAPI

深いページネーションのためにスクロールAPIの使用を推奨しなくなりました。10,000件以上のヒットをページングする際にインデックスの状態を保持する必要がある場合は、ポイントインタイム(PIT)を使用してsearch_afterパラメータを使用してください。

スクロール検索 の次の結果のバッチを取得します。