- 1
- 0
- 约1.46千字
- 约 2页
- 2026-11-05 发布于北京
- 举报
48_技术:Elasticsearch时代如何实现搜索的自动补全
1.开篇
上节课通过网搜索商品的例子分析了自动补全功能,实际上自动补全功能是一种模糊查询的实现方
式。然后,回顾关系型数据库时代是如何实现模糊查询的,以MySQL为例介绍了4种模糊查询方式:
Like、RegExp(正则表达式)、内置函数和全文索引。本节课会介绍在Elasticsearch的时代是如何实现
模糊查询的。今天的课程分为以下部分:
Prefix前缀查询
Wildcard通配符查询
2.Prefix前缀查询
从上节课的内容可以得知,如果使用传统的关系型数据库的模糊查询,会使用到Like、RegExp(正则表
达式)、内置函数等技术,但是这些方式的搜索效率都不高,即便是表中加入了索引,这些方式也不会
工作在索引上。而且关系型数据库的索引在进行全文搜索方面远远不及Elasticsearch的倒排索引。因
此,我们会根据模糊查询的功能看看在Elasticsearch中使用什么方式实现。
如图1所示,下面这个例子就是通过prefix查找以“W1”开始的postcode()。
图1
由于prefix查询是一个词级别的查询,在搜索之前它不会分析要查询字符串。如图2所示,通过一个倒
排索引的列表,来看
原创力文档

文档评论(0)