ElasticSearch索引和搜索词匹配的一些细节

一个item"麦当劳":被切词成"麦当 + 劳"

那么这个item的索引有2个term:"麦当","劳"

那么下面代码,

能召回这个item的代码:

java 复制代码
//可以召回这个item

ArrayList<String> tokens = new ArrayList<String>();
tokens.add("麦当");
tokens.add("劳");

BoolQueryBuilder boolQueryBuilder = new BoolQueryBuilder();
for (String token : tokens) {
    boolQueryBuilder.must(new TermQueryBuilder(ITEM_NAME_FIELD, token));
}

能召回这个item的代码:

java 复制代码
//可以召回这个item

ArrayList<String> tokens = new ArrayList<String>();
tokens.add("麦当");

BoolQueryBuilder boolQueryBuilder = new BoolQueryBuilder();
for (String token : tokens) {
    boolQueryBuilder.must(new TermQueryBuilder(ITEM_NAME_FIELD, token));
}

不能召回这个item的代码:

java 复制代码
//不能召回这个item

ArrayList<String> tokens = new ArrayList<String>();
tokens.add("麦当");
tokens.add("肯德");
BoolQueryBuilder boolQueryBuilder = new BoolQueryBuilder();
for (String token : tokens) {
    boolQueryBuilder.must(new TermQueryBuilder(ITEM_NAME_FIELD, token));
}
相关推荐
误入运维泥潭8 小时前
Git与DevOps实战:从版本控制到自动化部署
elasticsearch·ci/cd·rabbitmq·devops
猿java13 小时前
搜索引擎:Manticore Search、Typesense和Elasticsearch,如何选择?
搜索引擎·面试·架构
钮钴禄·爱因斯晨1 天前
数据结构 | 深度解析二叉树的基本原理
数据结构·搜索引擎
嘀咕博客1 天前
知料觅得-新一代AI搜索引擎
人工智能·搜索引擎·ai工具
代码的余温1 天前
Beats与Elasticsearch高效数据采集指南
大数据·elasticsearch·jenkins
Elasticsearch1 天前
Observability:如何在隔离环境中部署 Elastic Agents
elasticsearch
代码的余温2 天前
Redis vs Elasticsearch:核心区别深度解析
大数据·数据库·redis·elasticsearch
嘀咕博客2 天前
Komo Searc-AI驱动的搜索引擎
人工智能·搜索引擎·ai工具
playStudy2 天前
从0到1玩转 Google SEO
python·搜索引擎·github·全文检索·中文分词·solr·lucene
代码的余温2 天前
Elasticsearch精准匹配与全文检索对比
大数据·elasticsearch·全文检索