问题标签 [elasticsearch-mapping]

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 投票
1 回答
4151 浏览

elasticsearch - elasticsearch MapperParsingException 没有类型数组的处理程序

我想使用elasticsearch来构建视频信息索引。有一个字段“tagIds”,它是一个类似 ["football", "basket ball"] 的数组,字段属性定义为

IDEA 给出了一个例外

我的 es 版本是 2.3.3,我检查了 es2.3.3 文档,它支持数组数据类型。

当我将 tagIds 字段类型从数组转换为字符串时,可以成功创建索引。

我用谷歌搜索了这个异常,没有发现任何相关信息。

0 投票
2 回答
735 浏览

elasticsearch - 更改索引类型映射中的属性类型

我有“T1”类型的索引映射,如下所示:

现在我想将 prop1 的类型从 更改textkeyword。我不想删除索引。我还读到有人建议用新类型创建另一个属性并替换它。但是我必须更新我不感兴趣的旧文件。我尝试如下使用 PUT api,但我从来没有工作过。

有什么办法可以做到这一点?

0 投票
2 回答
983 浏览

elasticsearch - elasticsearch:创建文档时将元字段_id复制到其他字段

我正在使用elasticsearch. 我看到每个文档都有元字段_id。我想使用此元字段搜索文档,因为我没有任何其他字段作为文档中的唯一字段。But_id是一个字符串,并且可以包含无法搜索的破折号,除非我们将字段映射添加为type :keyword. 但这是可能的,正如这里提到的。所以现在我正在考虑newField在文档中添加另一个字段并使其与_id. 一种方法是:首先创建文档并分配_id给该字段并再次保存文档。但这将有 2 个不太好的连接。所以我想newField在创建文档本身时找到一些解决方案。甚至可能吗?

0 投票
1 回答
1039 浏览

elasticsearch - Elasticsearch:时间的数据类型(HH:mm:ss.SSS)字段

我想索引一个仅包含 HH:mm:ss.SSS 格式的时间的字段。我可以使用哪种数据类型将此字段存储在 elasticsearch 中。

0 投票
2 回答
9353 浏览

elasticsearch - 如何在elasticsearch中存储关系数据

在 elasticsearch 中存储关系数据的选项有哪些。我知道以下方法

  1. 嵌套对象:- 我不想以嵌套格式存储数据,因为我想在不更改另一个文档的情况下更新一个文档,如果我使用嵌套对象,那么父文档中将重复子数据。

  2. 父子:- 我不想将数据存储在单个索引中,但是为了使用父子数据,需要存在于一个索引中(不同类型)。我知道此限制将在未来版本中删除,如https://github.com/elastic/elasticsearch/issues/15613问题中所述,但我想要一个适用于 5.5 版本的解决方案。

除了上述之外,还有其他方法吗?

0 投票
1 回答
776 浏览

elasticsearch - Elasticsearch动态模板:不想字段被分析,只想要一个关键字子字段

我们使用动态模板来指定索引中某些字段的映射。模板中没有提到大多数文本字段,并获取到分析字段和关键字子字段的默认映射:

这很好。

索引有一些我们不想分析的字段,只是做了关键字。但是,为了保持一致性,我们希望所有关键字字段都是名为“关键字”的子字段,如上所示。所以这:

不合适,因为它使“someField”本身成为关键字,而我们希望“someField.keyword”成为关键字字段。但是如果我使用这个模板:

创建分析的“顶级”字段以及关键字子字段:

有没有办法不映射“someField”字段,只有“someField.keyword”?我可以为“someField”级别设置 index : false ,但用户可能仍会尝试使用它,并想知道它为什么不起作用。

编辑:我试图将 someField 定义为对象类型,正如haltabush 所建议的那样,但得到一个错误。使用此模板:

当我发布此文件时:

我收到此错误:

0 投票
1 回答
53301 浏览

elasticsearch - 没有在字段 [name] 上声明的类型 [string] 的处理程序

type声明为string时,Elasticsearch 6.0 将显示此错误。

0 投票
1 回答
552 浏览

elasticsearch - 在弹性搜索中选择一行

我的映射如下,

我可以很好地添加数据,但是当我使用搜索时

它返回整个文档而不是特定行。

更多信息:

我正在为弹性搜索提供一个表格:

用户 ID | 姓名

1.............乔

2 ......玛丽

如果我在搜索中将 1 作为 user_id,我需要弹性搜索来返回 {user_id:1, name:Joe}

0 投票
1 回答
3110 浏览

elasticsearch - 嵌套类型字段内的字段聚合

我想聚合keyword位于类型字段内的nested类型字段。嵌套字段的映射如下:

我用来聚合的查询部分如下:

但这并没有返回正确的聚合。即使存在Keyword_field价值现有的文档,查询也会返回 0 个存储桶。所以,我的聚合查询有问题。谁能帮我找出问题所在?

0 投票
1 回答
301 浏览

elasticsearch - 从弹性搜索索引中检索唯一文档

如何从索引中获取所有唯一文档。我需要为文档的所有字段编写聚合查询吗?我可以在不为每个字段编写聚合的情况下获得唯一的文档吗?