【问题标题】:elasticsearch how to get previous data using scrollelasticsearch如何使用滚动获取以前的数据
【发布时间】:2018-09-19 14:36:28
【问题描述】:

我使用这个示例来制作分页功能

    POST /twitter/_search?scroll=1m
        {
            "size": 100,
            "query": {
                "match" : {
                    "title" : "elasticsearch"
                }
            }
        }



    POST  /_search/scroll 
        {
            "scroll" : "1m", 
            "scroll_id" : "DXF1ZXJ5QW5kRmV0Y2gBAAAAAAAAAD4WYm9laVYtZndUQlNsdDcwakFMNjU1QQ==" 
        }

但是有一个问题 这段代码可以得到下一个数据,但不能得到上一个数据我应该如何解决这个问题??

【问题讨论】:

    标签: elasticsearch pagination


    【解决方案1】:

    如果你想使用分页,你应该使用From / Size 而不是滚动。

    您也可以参考这个答案:Elasticsearch Scroll 它解释了扫描和滚动的区别

    【讨论】:

    • 我使用了 From / size,但它有 10,000 个数据限制,所以我必须滚动或搜索_after 谢谢你的回答祝你有美好的一天
    • 您可以更改 index.max_result_window 设置,但我认为这不是一个好主意,因为您的服务器可能会过载。 Scroll 绝对不打算用于实时查询(而且我认为您想在想要返回时进行实时查询)。那么您有两个选择:将查询结果的数量减少到超过 10000(使用“size”:10000)或告诉用户有超过 10000 个结果并且他必须优化他的搜索。
    • 我尝试更改 index.max 的设置,我可以提供设置选项指南或链接吗?
    • 我完全不推荐它,但如果你想改变设置,这里是如何做到的elastic.co/guide/en/elasticsearch/reference/current/…,这里是选项指南:elastic.co/guide/en/elasticsearch/reference/current/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-26
    • 2017-05-21
    • 2021-03-16
    • 2013-06-25
    • 2022-06-23
    • 1970-01-01
    • 2017-11-24
    相关资源
    最近更新 更多