Elasticsearch删除多个映射类型导致太多字段

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Elasticsearch删除多个映射类型导致太多字段相关的知识,希望对你有一定的参考价值。

我正在将Elasticsearchversion 5.6过渡到6.7。在6.x他们说multiple types应该被带到one type

当被带到一个type下时,新的type有很多领域。让我们说版本5.6,有类型ABC。他们每个人都有10个fields。所以每个document存储在那些types,有10个fields

但是在6.xABC被带入单个type DD有30个fields。如果我们在document存储type AD,则使用10个字段,20个fields(与BD相关)没有值。这不是浪费吗?还是糟糕的设计?

所以我只是想知道是否有任何方法可以改进这种设计。提前致谢。

脚注:当前版本的父子关系也需要保存在6.7中。 (没有太大的问题,可以使用join type完成)

答案

只需将每种类型迁移到自己的专用索引,这就是防止稀疏性的方法。

将几个类型保留在同一索引中(具有区别性的type字段)的唯一原因是它们共享一组公共字段时,否则,每个类型应该进入其自己的索引。

以上是关于Elasticsearch删除多个映射类型导致太多字段的主要内容,如果未能解决你的问题,请参考以下文章

5.elasticsearch映射操作(创建|修改|删除)及字段类型

5.elasticsearch映射操作(创建|修改|删除)及字段类型

如何将多个值类型集合映射到 Hibernate 中的一个表?

Elasticsearch:Flattened 数据类型映射

Elasticsearch:Flattened 数据类型映射

elasticsearch 6.0.0及之后移除了一个索引允许映射多个类型的操作(Removal of mapping types)