elasticsearch模板文件settings配置解析

elasticsearch模板文件settings配置解析_第1张图片

背景分析

整理一下模板文件里面的settings的配置。需要的配置以后回来这里抄,在网上到哪里搜索都找不到完整的配置整理。首先看一下什么是模板文件,参考官方文档里面对模板的解释
模板解析

PUT _template/template_1
{
  "index_patterns": ["te*", "bar*"],
  "settings": {
    "number_of_shards": 1
  },
  "mappings": {
    "_doc": {
      "_source": {
        "enabled": false
      },
      "properties": {
        "host_name": {
          "type": "keyword"
        },
        "created_at": {
          "type": "date",
          "format": "EEE MMM dd HH:mm:ss Z YYYY"
        }
      }
    }
  }
}

配置项

观察模板的主要组成,主要有两个部分settingsmappingsmappings是用来描述数据结构的文件,而settings主要和索引的设置有关,这篇文章主要就是为了记录settings的配置项。
观察别的通过文件设置的settings的配置,外层必包裹一个index
目前整理的(收集到的)配置项

  • number_of_shards 索引的分片数,整数型
  • number_of_replicas 索引的副本数,整数型
  • analysis 分析器列表
"analysis": {
    "analyzer": {
        "my_synonyms": {
            "tokenizer": "whitespace"
        },
        "name_analyzer2": {
            "tokenizer": "name_ngram2"
        },
        "name_analyzer1": {
            "tokenizer": "name_ngram1"
        }
    }
}
  • tokenizer 分词器列表
"tokenizer": {
    "name_ngram1": {
        "type": "ngram",
        "min_gram": "1",
        "max_gram": "1"
    },
    "name_ngram2": {
        "type": "ngram",
        "min_gram": "2",
        "max_gram": "2"
    }
}
  • similarity 自定义打分器列表
"similarity": {
    "mediaContentSimilarity": {
        "type": "mediaContentSimilarity"
    },
    "fieldLengthSimilarity": {
        "type": "fieldLengthSimilarity"
    }
}
  • routing 路由规则定义
"routing": {
    "allocation": {
        "include": {
            "_name": "nodeA,nodeB",
            "tag": ""
        }
    }
}
  • refresh_interval 索引刷新速度,快了影响性能,慢了影响实时性
  • _all all字段,所有的字段联合,关闭可以提高性能
**_all**: {
    "enabled": "false"
}

你可能感兴趣的:(elasticsearch模板文件settings配置解析)