スクロールAPI
深いページネーションのためにスクロールAPIの使用を推奨しなくなりました。10,000件以上のヒットをページングする際にインデックスの状態を保持する必要がある場合は、ポイントインタイム(PIT)を使用してsearch_after
パラメータを使用してください。
次のsearch_after
検索の結果のバッチを取得します。
Python
resp = client.scroll(
scroll_id="DXF1ZXJ5QW5kRmV0Y2gBAAAAAAAAAD4WYm9laVYtZndUQlNsdDcwakFMNjU1QQ==",
)
print(resp)
Js
const response = await client.scroll({
scroll_id: "DXF1ZXJ5QW5kRmV0Y2gBAAAAAAAAAD4WYm9laVYtZndUQlNsdDcwakFMNjU1QQ==",
});
console.log(response);
コンソール
GET /_search/scroll
{
"scroll_id" : "DXF1ZXJ5QW5kRmV0Y2gBAAAAAAAAAD4WYm9laVYtZndUQlNsdDcwakFMNjU1QQ=="
}
リクエスト
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
パラメータを使用してください。
スクロール検索 の次の結果のバッチを取得します。