我有一个关于elasticsearch索引模板的问题,有我的问题的一个场景。
为系列索引创建一个模板,名为templateA
,并且有一些从该模板创建的索引,名为Index-yyyy.mm.dd2
和Index-yyyy.mm.dd2
。一段时间后,我需要在索引中创建一些新字段,然后更新templateA
.
那么,如何使之前创建的索引使用新模板?请给我一些建议。非常感谢!
我有一个关于elasticsearch索引模板的问题,有我的问题的一个场景。
为系列索引创建一个模板,名为templateA
,并且有一些从该模板创建的索引,名为Index-yyyy.mm.dd2
和Index-yyyy.mm.dd2
。一段时间后,我需要在索引中创建一些新字段,然后更新templateA
.
那么,如何使之前创建的索引使用新模板?请给我一些建议。非常感谢!
该模板仅在创建索引时使用。您必须修改映射或重新创建索引并重新索引数据。
您可以使用PUT 映射 API来修改您的映射。
至少在 ElasticSearch 7.15 中,您可以使用相同的端点创建或更新索引模板,还可以:
在数据流或索引创建期间应用索引模板
这是 ovious 但“旧”数据需要以某种方式更新。
如果您使用的是 Logstash,只需重新启动它即可进行重新索引。