为什么此ElasticSearch扫描和滚动始终返回相同的滚动ID?

所以首先我运行以下命令:

curl -s -XGET http://localhost:9200/my_index/_search?scroll=1m&search_type=scan&size=10

这将返回一个滚动ID,然后在第一个滚动请求中使用该滚动ID:

curl -s -XGET http://localhost:9200/_search/scroll?scroll=1m&scroll_id=<scroll_id from above>

该文档会使我相信,当我运行第二个curl请求时,我应该获得一个新的滚动ID。

但是,看起来我一直在返回相同的滚动ID。

看起来每个请求返回的数据都不同,因此我假设一切正常。

到底是怎么回事?

回答:

您上面的内容是正确的。

在后续滚动请求中,scroll_id可以相同或可以不同。但是结果集(命中数)在随后的滚动调用中肯定不同。

scroll_id可能会在多次调用过程中发生变化,因此需要始终将最新的scroll_id传递为后续请求的scroll_id。

以上是 为什么此ElasticSearch扫描和滚动始终返回相同的滚动ID? 的全部内容, 来源链接: utcz.com/qa/419770.html

回到顶部