版本7.01 dynamic 为true 时,示例数据用term查询不是也查不出来吗?

来源:3-3 Dynamic Mapping是特性也有毒性(二)

hinsss

2022-09-24

图片描述
原因是索引是immoc ES会被分词,查询时需要指定keyword

写回答

1回答

少林码僧

2022-09-26

dynamic 为true,string类型的值自动推断的类型默认是text,会对字符串进行分词,同时还会生成一个keyeord类型的子字段,term做等值过滤一般不会使用text类型字段,而需要使用keyword类型的字段。所以这里使用filed1.field2.keyword进行term查询进行等值匹配。


1
0

海量数据高并发场景,构建Go+ES8企业级搜索微服务

全新 ES8 配合技术组件,实现高性能搜索

267 学习 · 54 问题

查看课程