我有一个问题,我想把弹性搜索的结果减少到1000个,不管有多少匹配的结果匹配,但这不应该影响排名和得分。
我在尝试terminate_after
,但这似乎只是告诉弹性搜索只获得前N个结果,而不考虑分数。如果我说错了,请纠正我。
有什么帮助吗?
编辑:
我已经在使用分页。因此,在From/Size中使用Size只会影响当前页面的大小。但我想将总结果的大小限制为1000,然后对其进行分页。
我知道这个问题问起来有点过时了,但是我被这个问题绊倒了,我很惊讶没有人能给出正确的答案。
Elasticsearch索引有一个名为max\u result\u window
的索引模块。您可以在动态索引设置下的文档中找到它。
索引。max_result_window
从大小
搜索到此索引的最大值。默认值为10000
。搜索请求从大小
中获取与成比例的堆内存和时间,这限制了该内存。请参阅滚动或搜索,以了解提高此级别的更有效的替代方法。
因此,基本上不是限制
从
或大小
(或这些的组合),而是将max_result_window
设置为1000
,ES将只返回每个请求最多1000次命中。
如果在单独的JSON文件中使用索引定义来创建索引,可以在
yourindexname下设置该值。设置。指数最大结果窗口
。
我希望这能帮助那些仍在寻找解决方案的人们!
您可以将大小指定为参数。
GET /_search?size=1000
{
"query" : {
//your query
}
}
使用From/Size返回所需数量的结果如何:
GET /_search
{
"from" : 0, "size" : 1000,
"query" : {
//your query
}
}
试图找出这个微不足道的例子的分数。我希望得到brenda eaton的文件,但我得到的是brenda fassie的最佳结果。
创建新的。NET Framework 4.6.1控制台应用程序 为NEST 6.5.0和ElasticSearch.NET 6.5.0添加NuGet包 然后,我创建了一个新的弹性索引,其中包含具有“tags”属性的对象(类型为“mything”)。此标记是一组可能值中的随机逗号分隔的单词集。在测试中,我在索引中插入了100到5000项。我试了越来越少的可能的词在设置。
我使用的是spring数据elasticsearch(4.0版)。现在,我需要将rest高级客户端的搜索结果转换为POJO对象。 我会使用杰克逊图书馆的ObjectMapper。我相信有更好的方法来做到这一点。 Spring data elasticsearch now(4.0版)使用MappingElasticsearchConverter。不幸的是,我不知道如何做到这一点-我没有看到任何相关文
我正在用Hibernate Search 4.5.1和Spring 4.0.5版本构建一个应用程序。我正在尝试索引以下类: 我正在构建一个junit测试用例,看起来如下所示: 我还注意到在luke lucene上,一些索引词的长度最多为6个字符,例如,一首歌的艺术家是“后代”,而索引中存储的词是“the”和“offspr”。第一个可以,但第二个不应该是“后代”。为什么要截断名字?
在我的弹性搜索数据库中插入6条记录后,我正在尝试一个弹性搜索示例。
目前,我正在将弹性搜索命中映射到POJO,然后再次将其保存在列表中。 是否有一种方法可以直接将弹性结果映射到内容POJO列表,而无需从Search Hit迭代它。