问题标签 [elasticsearch-analyzers]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
114 浏览

elasticsearch - 如何在 Grafana 中使用独立于时间范围过滤器的变量(用于过滤数据的下拉菜单)创建弹性搜索仪表板

我在 Grafana 6.6 中创建了一个变量,为用户提供过滤器下拉选项。我正在使用弹性搜索数据源。但是下拉列表将按时间范围过滤。我们如何使其独立于时间范围,换句话说,我不想为该变量应用时间范围过滤器。

0 投票
3 回答
96 浏览

elasticsearch - 拆分文本包含分成 3 个令牌

我们索引了许多可能包含“灯泡 220V”或“盒子 23cm”或“Varta 超级充电电池 74Ah”等标题的文档。然而,我们的用户在搜索时倾向于用空格分隔数字和单位,因此他们搜索“Varta 74 Ah”时并没有得到他们期望的结果。以上是对问题的简化,但主要问题希望是有效的。如何分析“Varta Super-charge Battery 74Ah”以便(在其他令牌之上)74Ah74Ah创建?

谢谢,

迈克尔

0 投票
1 回答
127 浏览

java - Magnolia 6.1.1 分析器(小写和重音)

我正在尝试将分析器与 Magnolia CMS 版本 6.1.1(社区版)一起使用,以使用“Sánchez”和“Sanchez”之类的词进行搜索,甚至使用“sánchez”或“sanchez”之类的小写搜索那个,但是文档太差了。(ASCIIFoldingFilter 和 LowerCaseFilter)。

我正在使用 PostgreSQL,并且我已经放入<param name="analyzer" value="org.apache.lucene.analysis.es.SpanishAnalyzer"/>jackrabbit-bundle-postgres-search.xml文件,并且我在同一个文件中的“searchIndex”就像<SearchIndex class="info.magnolia.jackrabbit.lucene.SearchIndex">.

我试图删除自定义存储库的 webapp 文件夹下的“存储库”文件夹中的索引文件夹(清理索引)。

哪些库必须添加到 pom.xml?我必须遵循哪些步骤?我需要修改哪些文件以使用 JCR 进行“不区分重音和小写”查询(使用“javax.jcr.query.QueryManager”和“javax.jcr.query.Query”)?

感谢您的所有回答。

0 投票
1 回答
47 浏览

elasticsearch - 如果搜索字符串长于搜索字段,则文档不匹配

我有一个我正在寻找的标题

标题是,并以“警察日记:stefan zweig”的形式存储在文档中

当我搜索“警察”时,我得到了结果。但是当我搜索 Policeman 时,我没有得到结果。

这是查询:

这是映射

应该注意的是,如果我搜索“某人的头衔”,我有一个标题为“某个头衔”的文档会被点击。

我不明白为什么警察的书没有出现。

0 投票
1 回答
98 浏览

elasticsearch - 带有反斜杠的字段的正确分析器

因此,我正在尝试使用正确的分析器为 Windows 凭据字段设置新的索引映射,该字段的格式为domain\username.

我希望能够搜索域、用户名和域\用户名。但是默认分析器似乎忽略了反斜杠(意思是,如果我尝试搜索域\用户名,它将搜索“域或用户名”而忽略反斜杠),如果我尝试使用空格分析器,它似乎只匹配域\用户名。

有小费吗?

0 投票
1 回答
187 浏览

elasticsearch - 休眠搜索和弹性搜索:mapper_parsing_exception + 分析器 [...] 找不到字段 [...]

我正在使用休眠搜索自动为特定实体创建索引

字段桥正在创建格式为:pt_[a-zA-Z0-9]+_i18n 的字符串字段。

之后,我正在创建一个动态模板来处理翻译的字段:

但是当我创建一个实体时,它总是返回一个错误:

葡萄牙语分析器通过以下方式定义:

有人可以告诉我我做错了什么吗?我已经在stackoverflow中浏览了一些问题,但没有成功。

PS:我正在使用 AWS 的 elasticsearch (5.6)

提前致谢

0 投票
1 回答
181 浏览

regex - 字母数字的 ElasticSearch 分析器自动完成功能

我有像 Hcc18、HCC23、I23 这样的字母数字代码,我想将它们存储在ElasticSearch中。为此,我想构建以下两个功能:-

  1. 用户可以搜索完整的字母数字代码或仅搜索整数部分。
    示例:对于 hcc15 或 15,hcc15应该在输出中和结果的顶部。
  2. 自动完成功能:当用户输入 I42 时,结果应包含 I420、I421 等。

我的 Elasticsearch 当前映射是:

正在查询:

我用这种方法面临的两个问题是: -

  1. 假设我搜索I420,现在因为映射仅基于数字,所以我得到了与数字 420 相关的所有代码,但完全匹配I420并没有出现在顶部。

  2. 请问这个映射如何才能实现上面提到的 自动完成功能

0 投票
1 回答
447 浏览

spring-boot - AbstractElasticsearchRepository:加载弹性搜索节点失败:MapperParsingException:找不到字段分析器[autocomplete_index]

用户案例:我想按照 search-as-user-type 模式使用 SpringBoot 和 ElasticSearch 开发一个微服务。换句话说,如果我输入“d”,我想回复 Demetrio、Denis、Daniel。键入第二个字母“e”会带来 Demetrio 和 Denis,最后第三个将检索到确切的名称。即使输入中间字母也应该带来。“en”应该带来丹尼斯和丹尼尔。搜索作为用户类型的非常常见的情况。

我正在研究以下建议:

边图

键入时搜索字段类型

搜索分析器

当前问题:当我启动旨在创建和设置 ElasticSearch 的应用程序时,我从这个问题主题中得到了异常。索引已成功创建并加载了我的初始数据,但似乎完全忽略了分析器。

启动 SpringBoot 时的完整日志:

来自资源/数据/es-config 的 elastic-analyzer.json

弹性搜索加载器

Correntista 模型

应用程序.yml

应用程序启动:

弹性索引设置

最初按预期加载的所有数据

所以,我的主要问题是:为什么在成功创建索引时没有创建分析器?周围的问题是为什么它会弹出“无法加载弹性搜索节点”,因为数据加载正确?

0 投票
1 回答
28 浏览

elasticsearch - 根据 7.X 语法使用时,Elasticsearch 分析 API 显示 1.X 版本的错误令牌

在处理用户的一个查询时,最初我认为他使用的是最新版本,而当他显示分析 API时,这令人惊讶。

需要检查令牌的自定义分析器

分析 API

正如上面清楚显示的那样,它生成了这么多不正确的令牌,当检查时用户提到他使用的是 1.7 版本并遵循最新版本的 elasticsearch 中提供的语法。

0 投票
0 回答
85 浏览

elasticsearch-5 - 精确搜索的优先级低于语音搜索?

我有一个弹性搜索索引,并且正在使用以下查询:

这是我设置的映射:

这是我的查询逻辑:

1)如果出现,它将给予短语最高优先级。

2)如果不是,它将使用标准分析器(即文本,按原样)并给予最高优先级。

3)如果所有其他都不匹配,它将使用语音分析器得到结果,这是最低优先级。

但显然这有一些错误,因为它似乎给予语音分析器比标准或短语更高的优先级。例如,如果我搜索“Person of Indian Origin”,它会在顶部返回突出显示“Pursuant”“追求”的结果,尽管我知道存在大量印度血统的人,但结果数量非常非常少。我该如何解决这个问题?