其他分享
首页 > 其他分享> > ES之动态映射

ES之动态映射

作者:互联网

1. 定义

与关系型数据库不同的是其不需要先定义表结构,而可以根据写入文档的内容,来推断字段和数据类型,创建索引结构,这就是dynamic mapping,动态映射的由来。

有时这是想要的行为有时又不希望这样。
可以用 dynamic配置来控制这种行为 ,可接受的选项如下:

2. 案例

2.1 动态模式

 

 

 

 

 

 

可见age被推断成long型,string类型的name被推断成多字段类型,第一个类型是text,第二个类型是keyword

 

 

 

 

动态映射默认有一个规则,即请求中文档的什么json类型对应es中什么数值类型,也可以通过动态模板(dynamic template)来覆盖这个规则,实现自定义推测规则,具体可以参考ES官网。
上述字段age被推测成long类型,如果非要往age中写入string类型的值,则会报错。如下图所示

 

 

2.2 非动态模式

某些场景下,不需要进行动态映射,如需要显示设置mapping。

 

 

 

 

 

 

 

 

 

 

2.3 严格模式

 

 

 

 

标签:index1,映射,mapping,字段,文档,address,动态,ES
来源: https://www.cnblogs.com/yanglei2022/p/16614133.html