问题标签 [elasticsearch-5]

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

elasticsearch - 相当于 ElasticSearch 上 Solr 的 copyField?

有人可以告诉我 ElasticSearch 上是否有等效的 Solr copyField 指令?

我知道有多字段类型: http : //www.elasticsearch.org/guide/reference/mapping/multi-field-type.html 当您想在同一字段上应用多个分析器时,这很好。

但它并不完全相同。Solr 允许将多个字段“合并”为一个:


这个插件很有前途: https ://github.com/yakaz/elasticsearch-analysis-combo

因为它允许在使用 ElasticSearch 多值字段时将结果作为单个字段取回。但它仍然不完全相同,因为它不允许“合并”多个字段。


我想要组合分析器和 Solr copyField 的组合。

我有一个博客文章模型(标题/描述字段),并且想将标题和描述复制到单个字段“blogContent”上,我将在该字段上应用 2 个不同的分析器。

ElasticSearch 中有解决方案吗?

0 投票
1 回答
1372 浏览

elasticsearch - 根据总文档过滤掉 top_hits 子聚合

我正在使用 Elasticsearch GeoHash 网格聚合进行地图聚类。该查询平均返回 100-200 个桶。每个存储桶都使用 top_hits 聚合,我使用它为每个聚合集群返回 3 个文档。

问题是我只想在父聚合(GeoHash)聚合不超过 3 个文档时返回 top_hits。

如果一个集群聚合了超过 3 个文档,我不希望 ES 返回该集群的任何文档(因为我不会使用它们)。

我尝试使用Bucket Selector Aggregation,但未能构建正确的bucket_path。我在与 top_hits 聚合相同的级别上使用存储桶选择器聚合。一个存储桶的总文档数可在top_hits.hits.total但我得到的是reason=path not supported for [top_hits]: [hits.total].

这在弹性搜索中可能吗?这对我来说很重要,因为在大多数查询中,只有一小部分存储桶的文档少于 3 个。但是即使对于 1000 个文档的集群,top hits 子聚合也总是返回前 3 个文档。如果查询结果返回 200 个存储桶,其中只有 5 个在聚合 <= 3 个文档,那么我只想返回 5*3 个文档,而不是 200*3(在这种情况下,响应为 10MB)。

这是我的查询的 aggs 部分:

0 投票
4 回答
81216 浏览

mysql - 如何将 ElasticSearch 与 MySQL 集成?

在我的一个项目中,我计划将 ElasticSearch 与 MySQL 一起使用。我已经成功安装了 ElasticSearch。我可以单独管理 ES 中的索引。但我不知道如何用 MySQL 实现相同的功能。

我已经阅读了一些文件,但我有点困惑并且没有清晰的想法。

0 投票
0 回答
430 浏览

java - Elasticsearch 5 Java 客户端不适用于 Groovy Grape

不确定这个问题是由 Elasticsearch 或 Groovy Grape 引起的。

我有一个使用 Grape 处理依赖项的 groovy 脚本:

来自“org.elasticsearch.client.transport”的 Netty 传递依赖项未正确包含,当我尝试连接时,我得到以下 ClassNotFoundException

运行“ grape resolve org.elasticsearch.client transport 5.0.0 ”返回

' org.elasticsearch.plugin:transport-netty4-client:5.0.0 ' 依赖没有解决。我也尝试明确包含此依赖项,但它不起作用。任何想法?

0 投票
1 回答
621 浏览

shell - 使用“是”安装 X-Pack 时,安装 Elasticsearch 的 Shell 脚本会引发错误

我正在开发一个 shell 脚本,它会自动安装最新的 Elasticsearch 5.0.0 GA 版本和 X-Pack 插件。

这是我所拥有的:

在 X-Pack 安装时,我收到以下错误:

如果我没有调用 X-Pack 安装命令,yes |那么一切正常。有什么问题yes |

0 投票
1 回答
3070 浏览

php - 突出显示在 Elasticsearch 和 PHP 中不起作用

我刚刚在我的 Windows 机器上下载并安装了最新版本的 Elasticsearch。我做了第一次搜索查询,一切似乎都正常。然而。当我尝试突出显示搜索结果时,我失败了。所以,这就是我的查询的样子:

总的来说,查询本身工作得很好——结果被过滤了。在我看到的控制台中,所有文档确实在其field1字段中包含“23”值。但是,这些标签 -<em></em>根本不会添加到结果中。我看到的只是field1像“ some text 23”,“ 23 another text”这样的原始值。这不是我期望看到的——“ some text <em>23</em>”、“ <em>23</em> another text”。那么,这有什么问题,我该如何解决?

0 投票
1 回答
189 浏览

elasticsearch - elasticsearch 5.0原生插件,查询错误

我为 es 5.0 编写了一个本机插件,其中extends Plugin implements ScriptPlugin和 scriptsextends AbstractSearchScript安装正常,但是当我执行以下查询时:

它失败并出现以下错误:

0 投票
1 回答
463 浏览

elasticsearch - 是否可以通过 Elasticsearch 中的映射来更新索引中的现有字段?

我已经创建了一个索引,它包含来自我的MySQL数据库的数据。我的表中有几个字段,我string需要它们作为.integerdoubleElasticsearch

所以我知道我可以通过mapping以下方式做到这一点:

但是当我将索引创建为新索引时,我已经尝试过了。我想知道的是如何使用as更新现有字段(即:chargeamount在这种情况下)?mappingPUT

这可能吗?任何帮助都将不胜感激。

0 投票
1 回答
158 浏览

elasticsearch - 如果小数点后的数字为零,它不会作为双精度值返回?

我在 中创建了一个索引elasticsearch 5.0,其中包含来自我的MySQL数据库的数据。我的表中有一个字段,string我需要它作为doubleES 中的 a。

因此,我所做的是在使用以下命令为相应字段创建索引时添加了映射PUT

在我这样做之后,一个包含小数点后的数字(即:23.23)的值将正确地返回为双精度值,但小数点后有零的数字(即:23.00)将其作为字符串本身返回(即:2300 )。

编辑:这些是我所做的步骤:

  1. PUT我最初是通过一个请求(http://hostmachine:9402/indexname)以上述映射为主体创建索引的。

  2. 然后我将数据(从我的 MySQL 表)推送到使用 logstash. 如果需要,我可以提供 logstash conf。

  3. 将数据上传到索引后,我尝试进行查询以检查结果是否显示双精度值。POST请求(和http://hostmachine:9402/indexname/_search?正文如下:

    /li>

结果如下面的快照所示,应该是267472.00

在此处输入图像描述

我哪里错了?任何帮助都将不胜感激。

0 投票
1 回答
447 浏览

elasticsearch - Docker ElasticSearch 5 无法启动。连ELK都不启动

elasticsearch:5 没有启动。收到以下错误:

我尝试了许多组合,例如设置 Xms、Xmx 等。没有任何帮助。