ElasticSearch:_template 与 _index_template

标签 elasticsearch

我刚刚意识到 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......

它们有什么区别?

最佳答案

Elasticsearch 在版本 7.8 中从 _template 切换到 _index_template

_template 在 7.8 中已弃用,但仍然可用。如果索引同时匹配旧版模板 (_template) 和可组合模板 (_index_template),elasticsearch 将使用可组合模板。

遗留模板和可组合模板之间的主要区别在于,遗留模板是静态的,如果您想更改所有模板中的字段,则必须编辑所有模板,但新的 _index_template 是模块化的,要更改所有模板中的设置,您只需更改一个组件。

关于ElasticSearch:_template 与 _index_template,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67802397/

相关文章:

elasticsearch - 仅使用 Elasticsearch 选择特定字段

ruby-on-rails-4 - 使用耐嚼将 Rails 应用程序连接到 elasticsearch

search - 基于初始查询结果的Elasticsearch查询

ElasticSearch:为什么query_string不区分大小写而通配符区分大小写?

elasticsearch - 如何在 Kibana 中可视化来自 Kafka 的消息

elasticsearch - Logstash是否支持Elasticsearch的_update_by_query?

php - 尝试执行 bool OR查询一次检索所有匹配文档时的Elasticsearch gc开销消息

elasticsearch - 多词查询中的多匹配搜索

elasticsearch - 如何在查询匹配中设置最小词频?

Elasticsearch 匹配与术语查询