ES对from+size是有限制的,from+size 不能超过10000。 原理: from+size在ES中的查询方式: 将指定关键字分词 将词汇去分词库中检索,得到多个文档id 取各分片中拉去指定数据(耗时较长) 根据scroe排序(耗时较长) 根据from舍弃一部分数据 返回查询结果 scroll在ES中的查询方式: 将指定关键字分词 将词汇去分词库中检索,得到多个文档id 将文档id存放在上下文中 根据指定size去上下文中检索指定个数的数据,拿完数据的文档id,会从上下文中移除 如果需要下一页数据,直接去ES上下文中,查询后续内容 循环4,5
#测试--scroll查询:执行scroll查询,返回第一页数据,并且将文档id信息存放在ES上下文中,指定生存时间1m POST /king_test_person/_search?scroll=1m { "query": { "match_all": {} }, "size": 2, "sort": [ { "age": { "order": "desc" } } ] }#测试--scroll查询:根据scroll查询下一页数据 POST /_search/scroll { "scroll_id":"FGluY2x1ZGVfY29udGV4dF91dWlkDnF1ZXJ5VGhlbkZldGNoAxZOSFpoaExrN1JVS3RVU1dLbWpuWUlnAAAAAAACTZcWeFdCZGlPRnFTejJXeWJ1ZmlKWEF4QRY4cXpzMU5HbFJZTzdUNm84NXVMdTV3AAAAAAADghwWMHVKNERoTGpRdmF5dm1ZeTZzUk8tURY1QXo5cEhuelRJMk5TMzlJMVdlaG5BAAAAAAAC4_sWUWc4X3M1ZFdUbC01Y0NGODNhbHZwQQ==", "scroll":"1m" } #测试--scroll查询:删除scroll在ES上下文中的数据 DELETE /_search/scroll/FGluY2x1ZGVfY29udGV4dF91dWlkDnF1ZXJ5VGhlbkZldGNoAxZOSFpoaExrN1JVS3RVU1dLbWpuWUlnAAAAAAACTUwWeFdCZGlPRnFTejJXeWJ1ZmlKWEF4QRY4cXpzMU5HbFJZTzdUNm84NXVMdTV3AAAAAAADgY0WMHVKNERoTGpRdmF5dm1ZeTZzUk8tURY1QXo5cEhuelRJMk5TMzlJMVdlaG5BAAAAAAAC44EWUWc4X3M1ZFdUbC01Y0NGODNhbHZwQQ==
标签:分页,scroll,查询,elasticsearch,上下文,id,ES,size From: https://www.cnblogs.com/wq-blogs/p/17995720