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));
}
相关推荐
计算机小手7 小时前
提升文档管理:推荐一键Docker部署的全文索引搜索引擎工具
经验分享·搜索引擎·docker·全文检索·开源软件
谷新龙00112 小时前
Elasticsearch服务器开发(第2版) - 读书笔记 第二章 索引
服务器·elasticsearch
所念皆为东辞13 小时前
elk部署加日志收集
linux·elk·elasticsearch·centos
可曾去过倒悬山19 小时前
Mac上优雅简单地使用Git:从入门到高效工作流
git·elasticsearch·macos
Hello.Reader21 小时前
用 Go Typed Client 快速上手 Elasticsearch —— 从建索引到聚合的完整实战
elasticsearch·golang·jenkins
Fireworkitte1 天前
es的histogram直方图聚合和terms分组聚合
大数据·elasticsearch·搜索引擎
Stringzhua1 天前
Git踩坑
大数据·git·elasticsearch
铭毅天下1 天前
从关键词匹配到语义理解——电商搜索引擎的智能化改造实战
搜索引擎
Elastic 中国社区官方博客2 天前
使用 Elasticsearch 和 AI 构建智能重复项检测
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
星月昭铭2 天前
Spring AI集成Elasticsearch向量检索时filter过滤失效问题排查与解决方案
人工智能·spring boot·spring·elasticsearch·ai