Elasticsearch升级doc_values已启用?

时间:2016-11-21 13:51:18

标签: elasticsearch elastic-stack

我最近将我的弹性群集从1.7.5升级到2.1.2。

我读过的比版本2+默认启用了Doc值,但我想知道这是否适用于我已经执行的升级?我已经检查了我对集群的_mapping和_settings,但是看不到对doc值的任何引用。

如果我对doc值如何工作的理解是正确的,我希望这会在某种程度上减轻集群上的内存消耗问题。

1 个答案:

答案 0 :(得分:1)

群集升级到2.1.2后,您应该perform an index upgrade旧索引,以便将它们迁移到新的Lucene格式。

您将在2.1.2中创建的所有新索引默认情况下都会启用文档值,因此没有什么特别的。

但是,为了利用ES 2.1.2中使用的Lucene格式,需要首先升级所有旧索引。在索引升级之后,所有旧索引将开始使用所有现有字段的doc值(当然除了分析的字符串),所有已编入索引的数据都不会回填到doc值文件中。为此,您需要重新编制数据索引,以便为现有数据使用doc值。但是,旧的升级索引中的所有新数据都将使用doc值。