使用 shuf 来打乱一个文件中的行或是选择文件中一个随机的行。

java api 使用.startScroll(),为什么无法排序

Elasticsearch | 作者 DengJ | 发布于2019年11月13日 | 阅读数:1650

 使用了如下三种方式排序,全部都排序失败了,是因为.startScroll()默认调用的是scroll-scan吗?
 
es 版本是6.8
 
FieldSortBuilder eventIdSort = SortBuilders.fieldSort("eventId").order(SortOrder.ASC);
FieldSortBuilder startTimeSort = SortBuilders.fieldSort("startTime").order(SortOrder.DESC);

SearchQuery searchQuery = new NativeSearchQueryBuilder()
.withQuery(
QueryBuilders.boolQuery()
.filter(QueryBuilders.rangeQuery("endTime").gte(startTime).lt(endTime).format("yyyy-MM-dd HH:mm:ss").timeZone("Asia/Shanghai"))
)
//第一种 无效
.withPageable(PageRequest.of(0, 1000,new Sort(Sort.Direction.ASC,"startTime")))
//第二种 无效
.withSort(eventIdSort).withSort(startTimeSort)

.build();
//第三种 无效
searchQuery.addSort(new Sort(Sort.Direction.ASC,"endTime"));
ScrolledPage<EsCtiCdr> scroll = (ScrolledPage<EsCtiCdr>) elasticsearchTemplate.startScroll(SCROLL_TIMEOUT, searchQuery, EsCtiCdr.class);
已邀请:

laoyang360 - 《一本书讲透Elasticsearch》作者,Elastic认证工程师 [死磕Elasitcsearch]知识星球地址:http://t.cn/RmwM3N9;微信公众号:铭毅天下; 博客:https://elastic.blog.csdn.net

赞同来自:

打印下dsl 看是不是逻辑错了

要回复问题请先登录注册