文章目录
动态映射
动态映射的核心是在自动检测字段类型后添加新字段
哪些字段类型支持动态检测呢?
答:boolean类型、float类型、long类型、Object类型、Array类型、date类型、字符串类型。除此之外的类型是不支持动态检测匹配的,会适配为text类型
动态映射的弊端
1)字段匹配不准确,如将date类型匹配为keyword类型。
###字段匹配不正确
DELETE my_index_0505
PUT my_index_0505/_doc/1
{
"create_date": "2020-12-26 12:00:00"
}
GET my_index_0505/_mapping
获取映射发现,create_date是text和keyword组合类型,不是我们期望的date类型。
那么如何解决呢?方案如下(需要提前设置匹配规则)。
####提前设置匹配规则
DELETE my_index_0505
PUT my_index_0505
{
"mappings": {
"dynamic_date_formats": ["yyyy-MM-dd HH:mm:ss"]
}
}
PUT my_index_0505/_doc/1
{
"create date": "2020-12-26 12:00:00"
}
GET my_index_0505/_mapping
<