我在@timestamp和_uid上有一个match_all查询排序。参数设置为= 0和size = 25。我按预期得到了25个ID。
如果我使用相同的查询,然后使用相同的参数添加search_after id 12,我希望得到id {12,13,14,15..25}。相反,我回来了{4,5,6,... 25}。
我对如何发生这种情况感到很困惑?不是search_after的名称暗示它只会在原始查询指定的条目之后返回结果吗?
同样对于search_after,我正在使用:“search_after”:[1527201104032,“log#AWOUR2VorbUl8ovcHSNq”],
显然第二个条目是我的_uid。我假设第一个条目是游标id。它是否正确?无论我是在没有search_after的情况下从我的第一个查询中完全按原样复制它。
答案 0 :(得分:0)
search_after
应该始终与您的排序匹配,因此第一个值为时间戳,第二个为_uid。
要从12个文档中获取文档,您需要为search_after提供时间戳和_uid为11。