- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
给定一个像这样的短语匹配查询:
{
'match_phrase': {
'text.english': {
'query': "The fox jumped over the wall",
'phrase_slop': 4,
}
}
}
有没有一种方法可以按完全匹配对结果进行分组?
因此,如果我有 1 个包含“The quick fox jumped over the small wall”的 text.english
文档和 3 个包含“The lazy fox jumped over the big wall”的文档,我最终得到这两组结果。
我可以运行多个查询并在 ES 之外进行一些处理,但我需要一个能够在大量文档上合理执行的解决方案。理想情况下,我希望有一种方法可以使用我错过的聚合来做到这一点。
我想出的最佳解决方案是运行上面带有高亮显示的查询,从所有结果中解析出所有高亮显示,然后根据高亮显示内容对它们进行分组。这对于非常小的结果集来说很好,但是超过 1000 个文档的结果集就慢得令人望而却步。
编辑:也许我可以更清楚一点。如果我有具有以下值的示例文档:
我希望能够使用查询文本“The fox jumped over the wall”对我的结果进行如下分组:
最佳答案
在我看来,highlighting
是唯一的选择,因为它是 Elasticsearch 显示匹配的文本“部分”的唯一方式。在您的情况下,您希望根据“匹配”的内容对文档进行分组。
如果文本会更短(比如几个单词),也许更复杂的解决方案是将文本拆分成 shingle
的方式,并以某种方式对这些短语进行分组。 .也许。
但是对于文本页面,我认为唯一的选择是使用突出显示并在之后执行额外的步骤来对突出显示的部分进行分组。
关于elasticsearch - 在 Elastic Search 中按匹配文本对 match_phrase 搜索结果进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33304401/
我正在使用elasticsearch 6并有以下查询 { "query":{ "bool":{ "should":[ { "match_
我确实读过这篇文章post但不太明白如何应用它。 我分析了我的索引,我想知道是否可以搜索没有屈折形式的短语。 es.indices.create(index='bhar',body = { "set
我的文档有一个“描述”字段,包含 3 到 10 个句子。 我必须支持模糊性,因为我不能期望用户使用完全相同的词。 另一方面,我必须使用“match_phrase”而不是“match”,因为如果单词彼此
我正在使用 ElasticSearch,我正在尝试实现 match_phrase/string + fuzziness,但似乎不可能(在线示例不多,文档中没有此类案例)。 我需要的是:短语/字符串匹配
我一直在尝试使用多个过滤器来获取文档。 我目前正在使用ES 1.7,是否可以在过滤器上两次使用match_phrase? 示例:人员文档q=aaron&address=scarborough-通过姓名
匹配短语查询 { "query": { "match_phrase": { "approved_labelled_products.companies": "SOMETHING
我刚刚开始使用 Elasticsearch,版本 7.5.1。 我想查询以特定单词片段开头的结果。 例如 寿 * 应返回包含以下内容的数据: thought, Thomson, those, etc.
我有“设备”类型的文档,我使用以下查询按模型搜索(使用 Flask 和 Elasticsearch 作为 api): match handset query = { "quer
我需要使用match_phrase和模糊匹配的查询。但是我找不到任何文档来构造这样的查询。另外,当我尝试合并查询(一个在另一个)时,它会引发错误。是否可以构造这样的查询? 最佳答案 您将需要使用Spa
更新 : 在阅读了 Richa 的解释和推荐的 blog post 后,该问题似乎已得到解决。 ,但我需要更多测试才能确认。 首先,应按照 Richa 的建议更改同义词格式: [“绿色 => 卡其色,
给定一个像这样的短语匹配查询: { 'match_phrase': { 'text.english': { 'query': "The fox jump
我必须在多个字段上搜索同一个查询字符串的关键字。 "bool": { "should": [ { "match": {
所以 ElasticSearch 有 terms 查询,它让我可以提供多个值并返回一个文档列表,其中字段 X 与这些值中的任何一个匹配。 但我想对 match_phrase 做同样的事情 - 即返
我遇到了 elasticsearch npm 模块的问题。这是我的查询: try { const { hits: { hits } } = await client.s
我是一名优秀的程序员,十分优秀!