大量のデータを取得する必要がある場合は、スクロールを使用する必要があります。
まず、クエリでスクロールを開始します。
curl -XGET 'localhost:9200/your_index/your_type/_search?scroll=1m' -d '{
"size": 5000,
"query": {
"term" : {
"isbn" : "475869"
}
}
}'
次に、最初の 5000 個のドキュメントと_scroll_id
、後続の要求を実行するために使用できるトークンを応答で取得します。
scroll_id
次に、結果が得られなくなるまで、5000 個のドキュメントの次のバッチを取得するために、前の応答からのトークンを使用して次の要求を繰り返し実行できます。
curl -XGET 'localhost:9200/_search/scroll' -d '{
"scroll" : "1m",
"scroll_id" : "c2Nhbjs2OzM0NDg1ODpzRlBLc0FXNlNyNm5JWUc1"
}'
Jest を使用しているので、SearchScroll
使用できるクラスがあります。そのクラスがどのように使用されているかをテストケースで確認してください。