ES 记录之如何创建一个索引映射,以及一些设置
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分词器来进行分词结构