问题标签 [elasticsearch-query]
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.
elasticsearch - Elasticsearch:搜索类似产品
我有一个包含 5000 万种产品的清单。每个产品都有一个包含 200 项功能的列表。我希望通过匹配在 200 个功能中具有最大重叠的产品功能来找到类似的产品。
目前我将 200 个单词与空格连接起来并形成一个长字符串。当我想为特定的选定产品查找类似产品时,我检索存储的 200 字长字符串并搜索 elasticsearch。
这给出了预期的结果,但每次搜索大约需要 7 秒左右。那是因为搜索短语太长了。有没有更好的方法来做到这一点并找到弹性的最佳重叠?
elasticsearch - 如何在 Elasticsearch 上进行联合查询?
我想用 UNION 和 limit 进行查询。
我可以在 mysql 上解释该查询。
我在 Elasticsearch 上试过
http://localhost:9200/test/table/_search?pretty&source= {%22query%22:{%22dis_max%22:{%22queries%22:[{%22query%22:{%22match%22:{%22type %22:%22test%22}}}]}}} 然后,错误发生了。
当我只使用匹配查询时,它起作用了。但是对于大小,它不起作用。
我该如何解决?
elasticsearch - 如何为地址编写 Elasticsearch Analyzer?
我正在尝试编写一个分析器来索引地址字段。该字段和查询可以包含城市、国家/地区、街道名称/编号、邮政编码的多种组合。字母大小写和词序应该被忽略。我还需要处理不同的语言。如果我有一个包含“los angeles”的条目 - 目前我通过查询“los”或“angeles”将其取回。但不是“洛杉矶”。我不能使用标记化的关键字,因为那只会搜索整个术语的匹配项......那么我应该怎么做呢?编辑 - 这是用于前缀搜索。EDIT2 - 当我使用标准标记器时 - 搜索适用于“los”,“los angeles”,“angeles”,“angeles los” - 但不适用于“lo”......我也需要前缀搜索。如果我使用“
谢谢。
elasticsearch - 同一子文档中两个字段的弹性搜索过滤器
我正在尝试编写一个弹性搜索查询,其中我有一组具有完全相同结构的子文档,并且我必须检查同一个子文档中的两个条件。
我的数据如下所示:
我正在尝试的是:我应该得到规范名称为“Test1”且同一子文档的规范值为“是”的产品
这是我为此编写的查询:
问题是- 它不应该返回 id 为 1723913526 的产品,因为 "value": "Yes" 对于 "name": "Test2" 是 true,而不是对于 "name": "Test1"。
我希望问题很清楚,如果需要更多信息,请发表评论。
提前致谢。
elasticsearch - 弹性搜索(2.4) - 搜索和聚合数组
我有一个映射为的索引 -
我在其中添加了一些数据-
我想用这些规则查询这些数据:
- 查找所有给出标签列表的用户。
- 对于这些用户,按计数对标签进行分组。
例如,我想查询同时拥有 tag2 和 tag3 的用户,并将标签与他们的计数按排序顺序分组。在三个用户的给定样本数据中,我的结果是label2 = 2; label1 = 1, label4 = 1
.
elasticsearch - 如何构建 Elasticsearch 以仅过滤带有子域的 URL?
我将 URL 作为字段存储在 Elasticsearch 中。但是,我想只过滤在url
.
例如。
我希望我的搜索结果有
但我不希望结果有
这在 Elasticsearch 查询中可行吗?
elasticsearch - ElasticSearch distinct查询在logstash中运行,显示重复行
我正在尝试使用 Logstash 从 Elasticsearch 服务器获取不同的最新数据,消除一些字段和零值,然后将其插入 Redis。对于弹性搜索数据,我有一个名称字段、一些描述字段和 2 个位置值——纬度和经度。还有其他人管理弹性服务器,所以我不能用弹性更改任何配置。
我发现这个 Stackoverflow 问题我认为符合我的问题:如何使用 Elasticsearch 查询获取每个组的最新值?
因此,我尝试在我的 logstash 配置中使用所选答案中的查询。下面是我的配置文件:
弹性查询(为了更好的查看):
我尝试使用上述配置运行logstash,但logstash 会多次发送一些具有完全相同数据的行。有什么帮助吗?
elasticsearch - 在 Elasticsearch 的同一字段上进行全文搜索以及术语搜索
我来自 MySql 背景。所以我对弹性搜索不太了解,它正在工作。
这是我的要求
在所有列上都会有一个带有排序选项的结果记录表。将有过滤器选项,用户可以从中选择多个列的多个值(例如,City 应该来自 City1、City2、City3,Category 应该来自 Cat2、Cat22、Cat6)。还将有搜索栏,用户将在其中输入一些文本,全文搜索将应用于某些字段(即城市、区域等)。
该图像将提供更好的理解。
我面临的问题是全文搜索。我尝试了一些映射,但每次我不得不在全文搜索或术语搜索上妥协。所以我认为没有任何方法可以将两种搜索应用于同一领域。但正如我所说,我对弹性搜索知之甚少。因此,如果有人有解决方案,将不胜感激。
这是我目前应用的,它使排序和术语搜索启用,但全文搜索不起作用。
python - 使用 elasticsearch-dsl-py 对子字段(包含在另一个字段中的字段)创建查询?
类似于我想在子字段上创建查询的问题 (不是嵌套类型)
如果数据是格式
正如aaronfay 在回答中提到的那样, 我尝试使用
它按预期工作。
但是对于名为的字段mount_point
,查询返回空响应。
即使我有数据mount_point = '/'
。为什么?
elasticsearch - 如何从 ES 查询中知道 ES 索引?
我有弹性搜索查询(从 XHR 调用中得到它 - 使用 ARC),但需要知道查询被击到哪个索引。