在elasticsearch中是否有任何方法进行反向分页(与golang)

nom7f22z  于 2021-06-14  发布在  ElasticSearch
关注(0)|答案(1)|浏览(318)

分页是使用scroll\u api完成的,因此超过10k

http://localhost:9200/all_assets/_search?scroll=10m

{

    "from": 0,
    "size": 10,
    "query": {
        "match_all": {}
    },
    "sort": [
        {
            "?.keyword": "?"
        }
    ]

用这个得到下一个更进一步的结果

localhost:9200/_search/scroll?pretty
{
    "from":10,
    "scroll": "10m",
    "scroll_id": "FGluY2x1ZGVfY29udGV4dF91dWlkDXF1ZXJ5QW5kRmV0Y2gBFFNmNUJLM1VCaFRQeUhJQlNPamRqAAAAAAAAAAIWNE0tSDZYY2tSanFyUk95VXl0enpsZw=="
}

1]如果我们执行此操作,将获得下10条记录;2]我们再次执行,将获得下10条记录,是否有任何方法可以获得前10条记录,是否已尝试使用from和size。有没有办法使它与向后兼容。
没有得到上一个结果,如果我们使用scroll\u id url执行并希望使分页前后兼容,它将提供接下来的10条记录。

pwuypxnk

pwuypxnk1#

scroll 只有一条路,向前走。你不能回去。如果你想有倒退,你需要使用 search APIfrom 以及 size 参数。

相关问题