search_afterは前ページの最後の結果の後から続きを取得するために使います。PITはある時点の検索ビューで、ページを進む間もデータセットを安定させるために使います。
ビューを開き最初のページを読む
Kibana Dev ToolsでPITを開きます。
http
POST /products/_pit?keep_alive=1m
返されたidを下のプレースホルダーへコピーします。priceは数値フィールドとします。有効期間とページサイズは説明用です。
http
POST /_search
{
"size": 2,
"pit": {"id":"PIT_ID_FROM_RESPONSE","keep_alive":"1m"},
"query": {"match_all":{}},
"sort": [{"price":"asc"},{"_shard_doc":"asc"}]
}
最後のhitにがあるとします。価格は120で、2つ目の値はこのPIT内で同価格のhitを区別します。
