我刚刚意识到ES有一个_/_template和一个_/_index_template。
它们是用来做什么的?
我使用的是代码:
PutIndexTemplateRequest ngramTemplate = new PutIndexTemplateRequest("ngram-template")
.patterns(Arrays.asList("resourcetable-*", "termconcept-*"))
.settings(Settings.builder().put("index.max_ngram_diff", 50));我不明白为什么我的ngram-template没有出现在_/_index_template上。
在那之后,我一直在看_/_template……
它们之间的区别是什么?
发布于 2021-06-02 17:36:32
在7.8版本中,Elasticsearch从_template切换到_index_template。
_template在7.8中已被弃用,但仍可用。如果索引同时匹配拉格西模板(_template)和可组合模板(_index_template),则elasticsearch将使用可组合模板。
传统模板和可组合模板之间的主要区别在于,传统模板是静态的,如果您想要更改所有模板中的字段,您必须编辑所有模板,但新的_index_template是模块化的,要更改所有模板中的设置,您只需更改一个组件。
https://stackoverflow.com/questions/67802397
复制相似问题