博客
关于我
es基于completion suggest实现搜索提示
阅读量:782 次
发布时间:2019-03-23

本文共 497 字,大约阅读时间需要 1 分钟。

在之前的文章中,我们通过 Elasticsearch 的前缀搜索功能实现了文档的前缀匹配效果。为了让搜索功能更加高效,我们可能会使用另一种实现搜索提示的方式——基于 Completion Suggest 的方法。

假设我们的文档库中包含大量关于《大话西游》的相关内容,如“大话西游电影”、“大话西游小说”、“大话西游舞台剧”等。在这种情况下,我们可能会希望快速搜索以“大话西游”开头的文档。为了实现这一功能,我们需要对 Elasticsearch 的索引和字段进行适当的配置。

首先,我们需要自定义索引并设置相关字段的分词属性。在这里,我们将使用 IK 中文分词器来提高搜索的准确性和相关性。为了支持搜索提示功能,我们会在相关的字段上添加完成建议(Completion Suggest),以增加搜索的高效性。

具体来说,我们可以在 mappings 中定义“news”字段,并为其设置适当的字段分词属性和完成建议配置。这样一来,当用户在输入时,搜索引擎会自动提示匹配的文档,提升用户体验。

通过这种方法,我们可以在不影响原有搜索功能的前提下,进一步优化搜索的灵活性和速度,满足更复杂的搜索需求。

转载地址:http://vqozk.baihongyu.com/

你可能感兴趣的文章
mysql中的字段如何选择合适的数据类型呢?
查看>>
MySQL中的字符集陷阱:为何避免使用UTF-8
查看>>
mysql中的数据导入与导出
查看>>
MySQL中的时间函数
查看>>
mysql中的约束
查看>>
MySQL中的表是什么?
查看>>
mysql中穿件函数时候delimiter的用法
查看>>
Mysql中索引的分类、增删改查与存储引擎对应关系
查看>>
Mysql中索引的最左前缀原则图文剖析(全)
查看>>
MySql中给视图添加注释怎么添加_默认不支持_可以这样取巧---MySql工作笔记002
查看>>
Mysql中获取所有表名以及表名带时间字符串使用BetweenAnd筛选区间范围
查看>>
Mysql中视图的使用以及常见运算符的使用示例和优先级
查看>>
Mysql中触发器的使用示例
查看>>
Mysql中设置只允许指定ip能连接访问(可视化工具的方式)
查看>>
mysql中还有窗口函数?这是什么东西?
查看>>
mysql中间件
查看>>
MYSQL中频繁的乱码问题终极解决
查看>>
MySQL为Null会导致5个问题,个个致命!
查看>>
MySQL为什么不建议使用delete删除数据?
查看>>
MySQL主从、环境搭建、主从配制
查看>>