问题标签 [elasticsearch-high-level-restclient]

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 投票
0 回答
185 浏览

java - 使用 Java ElasticSearch 高级客户端的问题:SortedNumericIndexFieldData 无法转换为类 IndexGeoPointFieldData

我目前第一次与我的团队一起工作,在我们的 java 项目中进行弹性搜索。我可以进行搜索查询,现在我想查找给定位置周围的地理点。

我的目标是获得 n 个更接近的元素,我的想法是按距离对点进行排序并获取 n 个第一个结果。为此,我将索引字段“位置”定义为地理点类型:

这似乎可行,因为它消除了我之前在字段映射中遇到的错误。此外,查询元素为我提供了字段位置的地理点值,这是另一个好消息。

当我进行查询以进行排序时,我使用此 Builder 创建排序:

使用查询“matchAllQuery”,因为稍后我将进行更多过滤。

(如果需要,我可以精确调用 API,但除此之外我不运行任何特殊的排序、过滤器或其他东西)

可悲的是,这个问题从 API 本身引发了一个关于类型转换的错误:

(下面的栈是java server stack,不是ElasticSearch那一个)

我完全不知道,因为我检查的示例和代码似乎都验证了查询的构建。我对源代码的理解不足以得到实际的错误,所以任何类型的突出显示都会很好。

谢谢 !

0 投票
0 回答
49 浏览

java - 在 elasticsearch 中更新文档需要很长时间

我使用弹性搜索 7.9 版,并在每个月滚动的索引中索引文档。我的问题是弹性搜索中的并发更新请求需要很长时间。例如,如果更新对象的总时间是 6000 毫秒,则在弹性搜索中更新文档需要 5500 毫秒,这对我们来说不是很好。这就是我配置与elasticsearch的连接的方式:

这是我在项目中的更新请求

连接配置有问题吗

0 投票
1 回答
150 浏览

elasticsearch - 替代 ES org.elasticsearch.action.delete.DeleteRequest 中已弃用的方法

我使用 org.elasticsearch.client:elasticsearch-rest-high-level-client:7.13.2 作为 elasticsearch 依赖项,因为所有以前的版本都在我的组织中被隔离。

但是,由于不推荐使用的方法(如 org.elasticsearch.action.delete.DeleteRequest org.elasticsearch.action.index.IndexRequest org.elasticsearch.action.update.UpdateRequest

上述功能是否有替代方法在 ES 中创建/更新/删除文档。我确实搜索了这个主题,但找不到解决方案。

TIA

0 投票
1 回答
110 浏览

java - 如何有效地将日志索引到弹性搜索

我正在开发一个 Web 应用程序,我将在其中上传一个日志文件,该文件将根据记录器级别(信息、错误、警告等)被读取和分类。我需要使用 java 高级别的客户端 api 将这些日志索引到 elasticsearch。

目前我正在为类名创建一个索引(日志将包含类名)并将这些类日志存储在该特定索引中。如果日志文件包含来自 100 个不同类的日志,我觉得这种方法在某些情况下不会很好,我将为它创建 100 个索引并存储这些日志。

有什么有效的方法可以将日志索引到elasticsearch?在我的情况下如何确定索引?

示例日志:

2021 年 7 月 2 日|10:03:10.040|INFO|[main]|org.apache.catalina.startup.VersionLoggerListener.log|服务器建成时间:2021 年 6 月 11 日 13:32:01 UTC

0 投票
1 回答
92 浏览

java - 升级 Elastic Search 后 TotalHits 丢失

我已将 Elastic 搜索从“2.3.4”升级到“7.10.0”。

在我的 build.sbt 下添加了以下依赖项:

获取编译时TotalHits问题SearchResponse.getHits().getTotalHits()

有人可以帮我解决这个问题吗?我认为添加以上三个依赖项就足够了!

0 投票
1 回答
32 浏览

java - Elastic Search 7.x 中的 GetMappings 更改

我已将 Elastic 搜索从“ 2.3.4 ”升级到“ 7.10.0 ”。

在对应用程序代码进行更改时,对以下 GetMappings 情况感到困惑:

旧代码(2.3.4):

新代码(7.10.0):

任何人都可以在从新代码中的响应中获取映射数据时帮助我,get 下应该包含什么(参见新代码块的最后一行,也在 get 参数中询问)?那是 indexName 还是 Type 名称?

0 投票
1 回答
147 浏览

java - 使用 Elastic Search 高级别的客户端获取类型的映射

我已将 Elastic 搜索从“ 2.3.4 ”升级到“ 7.10.0 ”。我想升级为特定索引和类型获取映射的现有代码。请参考下面的代码(旧的和新的)。

旧代码(2.3.4):

新代码(7.10.0):

在新的代码更改中,我只能获取索引的映射。如何在 ES 7.10.0 中获取类型(旧代码中的“type1”)的映射?

0 投票
1 回答
36 浏览

java - 如何在 ElasticSearch 的 Rest High Level Client 中使用“has_child”

我想在 ElasticSearch 中发出以下搜索查询。

如何在 Java 的 Rest High Level Client 中编写上述查询?

0 投票
0 回答
41 浏览

java - 用于多级嵌套弹性搜索查询的 java QueryBuilders

我正在尝试为 elasticsearch 中的多级嵌套查询获取 java 查询生成器。我尝试使用 QueryBuilders.wrapperQuery 来合并查询,但没有成功。

0 投票
0 回答
34 浏览

elasticsearch - elasticsearch中的近似聚合结果

我有一个包含近 1M 唯一名称和 20 个碎片的 10M 文档的索引,当我使用术语聚合时,它会生成一个近似聚合结果作为 CURL 请求,但是当我尝试在 Java 中复制 REST 高级客户端中的近似值时,它会产生准确的聚合结果。

有没有办法使用 REST hlc 复制近似聚合结果?谢谢。

在 Elasticsearch-head 插件中实现- 显示 7 而不是 13, kibana 中的实际计数