问题标签 [elasticsearch-java-api]
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.
mongodb - ElasticSearch 是否具有与 mongodb 相同的索引功能?
我想知道,因为我们在 mognodb 中有索引创建功能来加快查询过程https://docs.mongodb.org/v3.0/indexes/ 为此我们有什么弹性搜索?我用谷歌搜索了它,但找不到任何合适的信息,我在 mongodb 中对最常用的字段进行索引以加快查询过程,现在我想在 elasticsearch 中做同样的事情,我想知道 elasticsearch 提供了什么。谢谢
elasticsearch - Elasticsearch 2.x 索引映射_id
我运行 ElasticSearch 1.x(很高兴)一年多了。现在是升级到 2.1.x 的时候了。节点应关闭,然后(一个接一个)再次打开。似乎很容易。
但后来我遇到了麻烦。主要问题是我自己创建的字段_uid
,以便我从随机另一个文档中知道文档的确切位置(通过散列值)。这样我就知道只有准确的那个会被退回。在升级期间我得到了
但是当我尝试将我的前者映射_uid
到_id
(这也应该足够好)时,我得到了类似的东西。
我使用_uid
参数的原因是因为查找时间比 termsQuery (或类似的)低很多。
我如何仍然使用每个文档中的_uid
or_id
字段来快速(准确)查找某些确切的文档?请注意,我必须同时调用数千个确切的,所以我需要一个类似查询的 ID。也可能会出现文档的_uid
or_id
不存在(在这种情况下,我想要像现在一样的“类似假”的结果)
注意:从 1.x 到 2.x 的升级非常大(过滤器消失了,名称中没有点,没有默认访问权限_xxx
)
更新(无用):
更新映射_uid
或_id
使用:
结果是:
更新:将名称更改为_id
,而不是,_uid
因为后者是由_type
#构建的_id
。那么我需要能够写到_id
.
elasticsearch - 如何使用 ElasticSearch Java API 从 JSON 构建聚合
我的代码有一个 JSON 格式的 ElasticSearch 查询和聚合,并且想要调用 ElasticSearch Java API。
对于查询部分,我可以使用 WrapperQuery 从 JSON 构建查询,如下所示:
但是,我也有用于聚合的 JSON,我没有看到可以用来从 JSON 构建聚合对象的 AggregationsBuilder.wrapperAggregation() 函数。
我错过了什么吗?
java - 我们是否需要在每个搜索请求后关闭弹性搜索节点
我想知道:node.close()
当我们完成查询/搜索过程时,我们是否必须每次都打电话,或者就client.close()
可以了?这是我的代码:
我经常运行这段代码;所以,之后node.close()
,下次我执行此代码时,它会再次启动节点(导致搜索响应延迟),这是不希望的。我想知道node.close()
当我们需要经常调用这个搜索代码时是否是正确的做法。
java - Elasticsearch 更新索引文档
我需要更新一个弹性搜索表的索引文档,这是我已经实现的代码。但它不起作用,出了什么问题,我应该如何实施?
我的代码。
(JSONConverter.toJsonString) 是我们用于转换为 json 字符串的库类。这个查询有什么问题?它不是更新现有文档,而是创建一个新文档。我想改变现有的。
java - Java Elasticsearch 客户端:在 Google Cloud VM 中从本地连接到 ES 时抛出 ConnectException
我有一个在 google-compute-engine(VM) 中运行的 elasticsearch 集群,我正在尝试从我的 Java 程序进行连接。
谷歌云中的 ES instante 有一个外部 IP 和内部 IP。我已经配置了用于连接的外部 IP,并且所有防火墙设置都启用了连接。
仍然看起来,客户端在将 myd 数据写入 ES 时正在某个地方使用内部 IP。
10.240.0.237 是内部 IP
代码
elasticsearch - 模糊化现有的 ElasticSearch Java API 查询
我有一个使用 Java API 的现有 ElasticSearch 查询:
现在我想为此添加模糊性,以允许轻微的拼写错误仍然向用户返回一些内容。我的猜测是向QueryBuilders
对象添加模糊参数会很有成效:
不幸的是,这似乎不起作用,到目前为止我一直无法找到好的文档。例如,我的John Deere
数据库中有字符串。如果我使用查询字符串deere
,我会得到匹配,但如果我使用查询字符串Deeree
或Deeer
.
我的问题是:我应该如何正确地模糊我的查询?
elasticsearch - 在 V2 中寻找有关 ElasticSearch java 节点设置的文档
我无法找到有关可以放入以下设置实例中的设置以及每个设置对节点客户端的含义的文档。
有人可以帮我找到那些设置文档吗?我正在为我们的企业使用开发通用客户端,并且非常需要此列表以使其成为通用组件。
elasticsearch - Elasticsearch:查找返回响应文档的单词的索引
我正在查询 elasticsearch 并获得一个数组作为回报。但是返回的数组包含多个句子。我想找到返回文档的单词的索引。退回文件的相关部分:
“_id”:“AVIcfnn-laLYKmOp14og”,“_score”:0.17643881,“_routing”:“1658591699”,“_parent”:“1658591699”,“_source”:{“heading”:“”,“paragraphs”:[”即插即用新型紧凑型便携式电动缝纫机适用于多种功能,如您可以做直线针迹、4 步钮孔、用于圆形针迹的自由臂、自动跳线绕线器、单触反向针迹、适合绗缝、花边工作,皮科特,吸烟,绳索,盲缝针,之字形针等。具有低维护和内置电动机的智能外观 60 瓦保修期两年,公司提供的服务在您家门口。", "图片代表实际产品,图片颜色可能与产品略有不同。", "2015 年 4 月 13 日"] },
如何在此数据中找到返回此文档的单词?