ES 记录之如何创建一个索引映射,以及一些设置

时间:2023-12-31 16:14:56

ElasticSearch 系列文章

1 ES 入门之一 安装ElasticSearcha

2 ES 记录之如何创建一个索引映射

3 ElasticSearch 学习记录之Text keyword 两种基本类型区别

4 ES 入门记录之 match和term查询的区别

5 ElasticSearch 学习记录之ES几种常见的聚合操作

6 ElasticSearch 学习记录之父子结构的查询

7 ElasticSearch 学习记录之ES查询添加排序字段和使用missing或existing字段查询

8 ElasticSearch 学习记录之ES高亮搜索

9 ElasticSearch 学习记录之ES短语匹配基本用法

10 ElasticSearch 学习记录之 分布式文档存储往ES中存数据和取数据的原理

11 ElasticSearch 学习记录之集群分片内部原理

12 ElasticSearch 学习记录之ES如何操作Lucene段

13 ElasticSearch 学习记录之如任何设计可扩容的索引结构

14 ElasticSearch之 控制相关度原理讲解

ES 记录之如何创建一个索引映射,以及一些设置

** 初始化其映射**

PUT /my_index/_mapping/my_type
{
"my_type": {//索引字段
"properties": {//
"english_title": {
"type": "string",//字段的类型,string类型
"analyzer": "english"//分析方式
}
}
}
}
//上面这种方式,是以前旧的方式。现在都使用这种的方式创建字段 PUT /my_index/_mapping/my_type
{
"my_type": {
"properties": {
"english_title": {
"type": "keyword" //不分词结构,
}
}
}
}
//type也有分词索引结构的字段,就是text类型的字段

ES中的基本数据类型有

  • 字符串 string
  • 数字类型 long integer double 等
  • 日期 date
  • 布尔类型 boolean
  • 二进制 binary
  • 复杂的数据类型
    • 数组类型
    • 对象类型
    • 嵌套类型 netsted
    • 地理数据类型
    • 专门数据类型
      • ipv4
      • 完成数据类型
      • 单词计数类型

同样我们可以使用其他数据类型来构建我们的数据映射

我们在创建索引时,也可以指定其他的设置,例如自定义分片方式

	PUT /my_temp_index
{
"settings": {
"number_of_shards" : 1,//主分片数量
"number_of_replicas" : 0//副分片数量
}
}

我们也可以在创建索引,同时自定义分词结构

PUT /product
{
"settings": {
"analysis": {
"analyzer": {
"defalut": {
"tokenizer": "ik_max_word"
},
"pinyin_analyzer": {
"tokenizer": "my_pinyin"
}
},
"tokenizer": {
"my_pinyin": {
"keep_first_letter": false,
"keep_full_pinyin": true,
"keep_original": false,
"keep_separate_first_letter": false,
"limit_first_letter_length": 16,
"lowercase": true,
"type": "pinyin"
}
}
}
}
},
这上面的分词器需要先安装,这是利用安装后ik分词器来进行分词结构