索引Mapping概念
数据
perl
{
"end_station_id": "6756.05",
"member_casual": "member",
"@timestamp": "2022-12-11T05:36:16.645Z",
"end_lat": "40.762009",
"start_station_name": "W 21 St & 6 Ave",
"start_lat": "40.74173969",
"ended_at": "2022-01-22 14:53:18",
"start_station_id": "6140.05",
"start_lng": "-73.99415556",
"rideable_type": "classic_bike",
"started_at": "2022-01-22 14:28:32",
"tags": [
"citibike",
"tripdata"
],
"ride_id": "D1FCEF55EB4A807F",
"end_station_name": "W 44 St & 11 Ave",
"end_lng": "-73.996975"
}
创建索引Mapping
静态创建索引Mapping
创建索引时,显示创建索引Mapping
bash
PUT citibike-202201
{
"settings": {},
"mappings": {
"properties": {
"ride_id": {
"type": "text"
},
"@timestamp": {
"type": "date"
},
"member_casual": {
"type": "keyword"
}
}
},
"aliases": {
"citibike": {}
}
}
GET /citibike-202201/_mapping
动态创建索引Mapping
动态创建索引方式,填充数据,自动更新索引mapping

静态+动态创建Mapping
· 部分静态创建 · 部分自动创建,自动更新mapping
json
PUT citibike-202201
{
"settings": {},
"mappings": {
"properties": {
"ride_id": {
"type": "text"
}
}
},
"aliases": {
"citibike": {}
}
}

source源数据
enabled源数据禁用启用 · 默认enabled=true,启用


mode源数据存储位置
- mode=synthetic:会改变源数据存储位置
- 存储数据位于doc-value,限定部分数据类型



include/exclude源数据过滤
_source
字段下的 includes
和 excludes
用于控制 Elasticsearch 索引中 _source
字段存储的内容(_source
是 Elasticsearch 存储原始文档数据的字段)


dynamic数据字段自动扩展
dynamic=true默认自动扩展

dynamic=false 禁⽌⾃动扩展










meta元数据
· 索引mapping维度,存储固定的⾃定义元数据字段信息
· 便于个性化场景



更新Mapping



索引常⽤字段类型
text文本多分词类型
type=text




type=match_only_text



keyword单分词类型




type=constant_keyword


type=wildcard



number数值类型
integer整型数值类型


float浮点数值类型


date日期时间类型



