gpt4 book ai didi

elasticsearch - 当“took”增加时,从输出返回的“from”增加

转载 作者:行者123 更新时间:2023-12-03 01:04:53 25 4
gpt4 key购买 nike

假设我的查询将返回100,000条匹配记录,但是对于每个页面,我只想返回100条记录:

{
"from": 0,
"size": 100,
//and here goes the usual stuff
}

假定查询的复杂性是一致的,我已经观察到,当“from”的数量增加时,处理和产生输出所花费的时间也将大大增加。

如果从第一条记录开始,花费的时间大约是100ms ++,但是如果从第32,188条开始,花费的时间将增加一倍或更长,达到300ms ++。

这是预期的行为吗?如何改善和缩短时间?

最佳答案

是的,这绝对是正常行为。您遇到的是"deep paging"。您只应在前几页中使用from/size,但切勿在结果中导航太多。原因是,您越浏览越多,仅返回几个,就需要检索更多的结果。对于您而言,最糟糕的情况是检索100个结果的最后一页。在这种情况下,需要从所有分片中检索所有100K文档(用于排序和评分),然后仅返回前100个匹配的文档。

如果您需要查看所有文档,最好的方法是使用scroll & scan

关于elasticsearch - 当“took”增加时,从输出返回的“from”增加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32090222/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com