当前位置: 首页 > 面试题库 >

在Elastic Search中模拟字段折叠/按字段分组

司空温书
2023-03-14
问题内容

Elastic Search当前(截至0.18.4)不支持字段折叠。有没有一种很好的方法来模拟这种情况,从而避免 N个 搜索查询?


问题答案:

可能不是您要找的答案,而是:据我所知,根据这张票证,唯一真正的解决方法是在客户端选择更大的结果集和组。



 类似资料:
  • 我有查询后查询 localhost:8000/_search/?pretty=true&q=abbeline+black 回应: 我将此请求更改为localhost:8000/_search/?pretty=true&q=abbeline+black 我一直得到这个错误 {“错误”:“SearchPhaseExecutionException[未能执行阶段[query],所有碎片都失败了;shar

  • 问题内容: 我发现的唯一接近的事情是:Elasticsearch中的多个分组方式 基本上,我试图获得与以下查询等效的ES : 年龄和性别本身很容易获得: 这使: 但是现在我需要这样的东西: 请注意,这是针对年龄范围的“映射”,因此它们实际上表示的是:)而不是数字。例如,性别[1](“男性”)细分为[246]的年龄范围[0](“18岁以下”)。 问题答案: 由于您只有2个字段,因此一种简单的方法是使

  • 我正在为我的服务层编写单元测试。我的服务层有多个自动生成的字段。我想只模拟其中一个和其他初始化为自动驾驶。 服务接口 服务实现 测试类 我只想嘲笑productRepository字段,但不想嘲笑productManager 问题是productManager 是否可以自动初始化它们?就像它们在运行带有完全加载的上下文的Spring引导应用程序时被初始化一样。

  • 问题内容: 我的索引具有如下所述的数据。 如何在Java中编写Elasticsearch查询。如果我按日期搜索2016-13-01T12:00:00我希望看到每个groupId的最新版本,其indexDate小于或等于搜索日期? 预期输出: 我没有在Elasticsearch的日期字段中看到max函数来实现这一点。 问题答案: 我将首先进行汇总,然后使用子汇总,以降序排序并返回该存储区的第一个文档

  • 问题内容: 我正在建立搜索,但需要使用不同的分析器分析1个字段。我的问题是,对于一个字段,我需要在其上安装一个分析器以进行词干分析(雪球),然后还需要一个分析器将完整的单词保留为一个标记(关键字)。我可以通过以下索引设置来使其工作: 在标题字段中搜索单个单词时出现问题。如果其中装有“帽子里的猫”,它将存储为“帽子里的猫”,但是如果我搜索猫,我什么也得不到。 这是否有可能实现?还是我需要有2个单独的

  • 问题内容: 我有一些文件: 如何按地区过滤/选择不同的文档? 在SQL中,我可以使用GROUP BY。我尝试了条件聚合,但返回的计数却不同。 感谢您的帮助!:-) 问题答案: 如果您的ElasticSearch版本为1.3或更高版本,则可以使用top_hits类型的子聚合,默认情况下,它将为您提供按查询分数排序的前三个匹配文档(此处为1,因为您使用match_all查询)。 您可以将参数设置为3以