问题标签 [elasticsearch-jest]

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 投票
2 回答
3171 浏览

java - _msearch 与 _search 性能

_msearch用于一次进行多次搜索。仅此一项就可以提高性能,因为它减少了网络开销。现在我_msearch_search端点一样使用单个查询。我想为将来的批处理建立这种机制。在我利用批处理之前,这会带来开销吗?行为是否与单个查询_msearch完全相同?_search

0 投票
0 回答
177 浏览

java - 弹性搜索 1.5 地理点问题

我们正在尝试在 ES 1.5 中进行地理距离排序。我们对 geo_point 类型的映射如下。

我们添加索引数据如下

当我们在文档被索引后检查弹性搜索的映射时,映射是不同的。

我们无法按地理距离排序,因为映射发生了变化。

0 投票
0 回答
1835 浏览

java - NoClassDefFoundError: org/elasticsearch/index/query/QueryBuilder

我有一个使用elasticsearch、Jest 和javax servlet 的项目。我的 pom.xml 文件如下所示:

我正在从 Eclipse 运行 Tomcat Apache 8.5.6。当我尝试运行服务器时,我收到错误“本地主机上的服务器 Tomcat v8.5 服务器无法启动”。堆栈跟踪如下所示:

我看到“java.lang.NoClassDefFoundError: org/elasticsearch/index/query/QueryBuilder”这一行——>但我可以通过扩展 Maven 依赖项来查看 org.elasticsearch.index.query.QueryBuilder 类。

我的猜测是错误出现在 pom.xml 文件中,但我无法准确找出阻止服务器启动的原因。

0 投票
1 回答
899 浏览

java - JEST 弹性搜索 rest java API 中的 SSL 证书合并问题

我在使用 Jest API 连接到 elasticsearch(ELK) 时遇到问题。我正在为 ELK 寻找基于 rest 的 java API,它支持 SCROLL 和 SCAN,还支持基于证书的身份验证。

我发现 Jest 和 Flummi 是可用的。

由于 Jest 很受欢迎并且有更多的支持,我正在尝试使用它。

我的 ELK db 需要一个用于身份验证的证书,我已在个人证书中安装了该证书。

我的问题是如何使用 Jest Client 对证书进行 Http 请求?我找到了一些代码,但它对我有帮助。我的代码如下。

请就这个问题提出建议。

0 投票
0 回答
594 浏览

java - 第一次执行操作后 Jest 客户端关闭

我创建了一个 AWS Lambda 包 (Java),其中包含一个从 Amazon S3 读取一些文件并将数据推送到 AWS ElasticSearch Service 的函数。由于我使用的是 AWS Elastic Search,因此我无法使用传输客户端,在这种情况下,我正在使用 Jest 客户端通过 REST 推送。问题在于 Jest 客户端。

这是我的 Jest 客户端实例:

由于 AWS Elasticsearch 域受 IAM 访问策略的保护,因此我签署请求以使它们获得 AWS 的授权(此处为示例)。我使用 POJO 来索引文档。

我面临的问题是我无法使用 jest 客户端实例执行多个操作。例如,如果我先创建索引:

后来,我想,例如做一些批量索引:

只有第一个动作会被执行,第二个动作会失败。这是为什么?是否可以执行多个操作?

Morover,使用提供的代码,当我想索引文档时,我无法执行超过 20 个批量操作。基本上,大约 20 个就可以了,但除此之外,client.execute(bulkIndexBuilder.build());just 不执行并且客户端关闭。

任何帮助或建议都将不胜感激。

更新:AWS ElasticSearch 似乎不允许连接到单个节点。只需在 Jest 客户端中关闭节点发现即可.discoveryEnabled(false)解决所有问题。这个答案有帮助。

0 投票
0 回答
1021 浏览

java - 弹性搜索 Jest 客户端中的 HTTPS 支持

我正在尝试通过 HTTPS 连接HTTPS/SSL 支持来连接 elasticsearch 。

代码如下

我能够使用 http 连接进行连接。但是当我尝试使用 HTTPS 连接时,我收到以下错误

错误

如果您发现此错误,请告诉我。代码有问题吗?

0 投票
1 回答
1686 浏览

java - Elasticsearch JEST 日期序列化 java

我正在使用 ES Jest。我可以进行搜索并获得回复。但是当我使用Date属性进行序列化时,我null在序列化后得到了响应。

以下是我的ES文档索引和搜索结果类:

我有以下日期序列化代码:

来自 ES 的回应:

我的序列化代码:

序列化后,我得到response = null

如果我从中删除 date 属性indexDocument,我可以看到序列化的响应。但是,使用 date 属性,它不起作用。什么地方出了错?

0 投票
1 回答
1153 浏览

java - 如何将 Jest SearchResult 命中投射到域对象

我正在使用 Jest 来查询 Elasticsearch,到目前为止它一直很棒。Jest 的文档说:

结果可以转换为域对象列表;

...并显示此示例:

getSourceAsObjectList已弃用,我正在使用:

... 不可变生成类在哪里ImmutableConceptDocument-否则非常简单的 POJO,其属性命名为我在source搜索结果下看到的。

但是,当我使用上面的行时,我没有得到源属性映射,我得到了其他细节,比如,score等等。typeindex

我错过了什么?域类是否需要具有特定的 Jest 注释或类似的东西?

我在单元测试中也看不到任何好的例子。这个映射到Object.class并且没有向我显示映射示例。

这是不可变的类:

...Category枚举类型在哪里。

0 投票
1 回答
601 浏览

java - JestClient 建议不要使用 java.lang.NoSuchMethod 错误

对于所有搜索,Jest-client 使用 uri 进行初始化,如下所示:

如何使用 uri 初始化客户端,如下所示?

我在 Ipas JestClient 和一个单词的方法中使用以下代码:

但是,它会产生错误

java.lang.NoSuchMethodError: io.searchbox.client.http.JestHttpClient.getElasticSearchServer()Ljava/lang/String; ' 在 client.execute(建议)期间。

在调试期间,我复制了建议变量的值并将其粘贴到Sense中,它按预期工作。

我正在使用以下 Maven 依赖项_all/_search

正在运行的弹性版本是 5.0.1,对于 Suggest,已导入以下依赖项。

有什么建议么?

0 投票
2 回答
1084 浏览

elasticsearch - 没有 JSON 查询的 Jest 客户端中的聚合

在探索 elasticsearch 中的聚合时,我发现聚合功能可以通过基于 HTTP 的 JEST 客户端中的 JSON 查询来实现,但不能在基于 TCP 的 Java 客户端中实现。

我正在使用 Jest Client 并通过运行良好的查询字符串实现聚合。但我觉得随着过滤器的增加,它变得非常麻烦。我想知道除了在 JEST 客户端中使用 JSON 查询(​​类似于 TCP 客户端中的聚合构建器)之外,是否有其他方法可以实现聚合,我们如何实现它?