问题标签 [elasticsearch-template]

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 回答
395 浏览

search - Elasticsearch 5.0 Java 客户端“ParsingException [没有为 [查询] 注册 [查询]]”

使用 java 客户端 API 执行模板查询时,出现此错误:

原因:ParsingException[no [query] 为 [query]] 注册?

请在下面找到模板查询:

0 投票
0 回答
68 浏览

java - 如果我不知道确切的索引名称,如何从 Elastic-search 中删除实体?

我在弹性搜索中有索引,其名称如下 -

  1. indexName-2017-01-25
  2. indexName-2017-01-24
  3. indexName-2017-01-23
  4. ...等等

以上所有索引都具有相同的“类型”,比如说“indexType”。

现在我想删除具有给定“id”的记录,该记录可能存在于上述任何索引中,我的 API 用户将为我提供以下信息 -

  1. 要删除的实体的 id。
  2. 索引前缀即“indexName-*”。
  3. 索引类型,即“indexType”。

如何在 JAVA 中编写查询以删除具有上述信息的实体?

0 投票
1 回答
1206 浏览

elasticsearch - 在 logstash 5.x 中修改默认的 elasticsearch 模板

我已经设置了一个 Elastic Stack 5.3 来聚合来自一堆服务器的日志,每个服务器中的 Filebeat 会抓取日志并将它们发送到一个集中的 Logstash、Elasticsearch 和 Kibana。

我已经设置了我的 Logstash 配置以提取一些自定义字符串字段,但我希望更改索引模板以将它们的类型从“文本”更改为“关键字”。我找到了配置指令来指定我自己的模板,但是在哪里可以找到 Logstash 的默认模板,以便我可以将其用作起点?我在 /etc/logstash 和 /usr/share/logstash 下进行了搜索(我在 RHEL 7 上安装了 vanilla Logstash 5.3 RPM),但找不到任何东西。

任何关于如何在 logstash 5.x 上创建非标准索引模板的好例子都会非常方便;我发现的大多数示例都早于 Beats 和 5.x 中的新字符串类型。该文档还有一些不足之处。

0 投票
0 回答
835 浏览

elasticsearch - 时间序列的弹性搜索映射

我们计划使用弹性搜索作为我们的指标存储的时间序列数据库。在通过弹性搜索作为时间序列数据库的以下博客(https://www.elastic.co/blog/elasticsearch-as-a-time-series-data-store)之后,我想出了以下映射

我们使用 metricbeat 进行指标收集,使用 logstash 作为摄取器。我们使用的是 elasticsearch 5.x 版本。

metricbeat --> logstash --> elasticsearch --> grafana/kibana.

我的模板是否针对度量存储进行了正确优化?我错过了什么吗?

0 投票
1 回答
2214 浏览

spring - ElasticsearchTemplate 检索大数据集

我是 ElasticsearchTemplate 的新手。我想根据我的查询从 Elasticsearch 获取 1000 个文档。我已经使用 QueryBuilder 来创建我的查询,并且它运行良好。我浏览了以下链接,其中指出可以使用扫描和滚动来实现大数据集。

链接一
链接二

我正在尝试在以下代码部分中实现此功能,我已从上面提到的链接之一复制粘贴了该代码。但我收到以下错误:

The type ResultsMapper is not generic; it cannot be parameterized with arguments <myInputDto>.

MyInputDto在我的项目中是一个带有@Document注释的类。一天结束,我只想从 Elasticsearch 检索 1000 个文档。我试图找到size参数,但我认为它不受支持。

这里有什么问题?有没有其他选择可以实现这一目标?如果有人能告诉我这个(代码)在后端是如何工作的,我将不胜感激。

0 投票
1 回答
776 浏览

elasticsearch - Elasticsearch动态模板:不想字段被分析,只想要一个关键字子字段

我们使用动态模板来指定索引中某些字段的映射。模板中没有提到大多数文本字段,并获取到分析字段和关键字子字段的默认映射:

这很好。

索引有一些我们不想分析的字段,只是做了关键字。但是,为了保持一致性,我们希望所有关键字字段都是名为“关键字”的子字段,如上所示。所以这:

不合适,因为它使“someField”本身成为关键字,而我们希望“someField.keyword”成为关键字字段。但是如果我使用这个模板:

创建分析的“顶级”字段以及关键字子字段:

有没有办法不映射“someField”字段,只有“someField.keyword”?我可以为“someField”级别设置 index : false ,但用户可能仍会尝试使用它,并想知道它为什么不起作用。

编辑:我试图将 someField 定义为对象类型,正如haltabush 所建议的那样,但得到一个错误。使用此模板:

当我发布此文件时:

我收到此错误:

0 投票
0 回答
169 浏览

elasticsearch - 将搜索模板推送到 ElasticSearch 时 json 无效

我正在开发一个 web 应用程序,为此我在启动期间将我的搜索模板推送到 ES,并在运行时使用它们来形成弹性搜索查询。我有一个要求,我不知道要应用的过滤器数量。创建了一个搜索模板,例如 -

搜索将像这样进行 -

获取_搜索/模板

这会将结果呈现为 -

正如 ES 文档所建议的那样 - https://www.elastic.co/guide/en/elasticsearch/reference/current/search-template.html

但是,由于它是一个无效的 JSON,它不允许我将模板推送到 ES。

当我将模板用作 elastic-home/config/scripts 中的存储模板时,我的模板运行良好。但我想用 JAVA 管理我的模板,并且只在启动期间推送所有模板。我能得到任何帮助吗?

0 投票
0 回答
407 浏览

elasticsearch - 更像是使用 ElasticsearchTemplate 进行的此查询

在“More like this query”中,我们不仅可以指定文档,还可以指定其他一些文本:

}

是否可以像上面的示例一样使用 Spring Data 和 Elasticsearch Template 添加一组文档和一大块要查询的文本?阅读https://docs.spring.io/spring-data/elasticsearch/docs/current/api/似乎 MoreLikeThisQuery 类不支持,对吗?是进行该查询的唯一方法吗?

0 投票
0 回答
101 浏览

elasticsearch - Elasticsearch 模板无法读取 id 中的下划线

这是我的查询模板,它是小胡子-

在我传递诸如“1110,1111,1123”甚至“1110”之类的值时,它工作正常,但是当我尝试传递诸如“1110_media”之类的值时,它给了我一个错误,

当我尝试不使用模板进行搜索时,它给了我想要的结果,例如 -

我们如何转义具有下划线的数组值?

0 投票
1 回答
242 浏览

elasticsearch - 在 Elasticsearch 中使用搜索模板进行日期范围查询

我们在使用 Elasticsearch 中的搜索模板构建日期范围查询时遇到问题。它工作正常,只有一个条件子句,但是当提供多个条件时,我们会收到以下错误。

错误

询问:

{ "id": "dateTemplate", "params": { "query_string": "*" } }

此模板同样适用:

询问