term 和 match phrase 有啥区别...

来源:8-6 查询语句进阶(2)

多捞啊

2021-02-14

前者精确匹配,后者整个短语匹配,感觉是一样的呀

写回答

2回答

萝卜小木头

2021-10-12

个人理解,不一定正确,欢迎讨论。首先我们将text插入index的时候是被analyzer分词后形成的反向索引,所以反向索引是一个一个的单词,而不是phrase,这就导致我们如果用term搜my world会没有返回结果,因为hello, my, world均不能包含整个my world字段,但是如果short phrase搜索由于short phrase本质仍然是先分词然后在反向索引中搜索但是返回结果只保留所有分词均出现过且分词间相对位置与原query每个词的相对位置一致的结果,这样short phrase就可以出现我们想要的结果。个人感觉哈,如果index创建的时候用了分词short phrase好于term

   

0
0

多捞啊

提问者

2021-02-14

term 要求整个字段就是精确值,而 match phrase 要求字段内包含整个词就可以了?

比如文本 hello my world

term 和 match phrase 走 my world

term 无法命中,而 match phrase 就可以命中,因为原字段包含 my world 这个短语

老师是这样么

0
0

ES7+Spark 构建高匹配度搜索服务+千人千面推荐系统

ElasticSearch实现高相关性搜索,Spark MLlib实现个性化推荐

1384 学习 · 559 问题

查看课程