一、 什么是top热词?如何设计top热词榜功能?
1.大家可以看下百度搜索的风格,在进行搜索时,百度首页会出现一个热搜词榜单,如:

(一)、这种就是搜索功能的top热词榜单,这个榜单可以这后台配置,让租户或客户可以任意控制榜单的顺序,比如电商系统的热搜商品或热卖商品 这种可以可以设计成在后台运营可配置的热搜或热卖商品top榜单,这样商家可以任意设置top榜单,有效的提高运营手段。
(二)、第二种就是通过数据采集用户每次搜索的关键词,计算出top热搜榜单。这种也可以通过es中的aggregations聚合,相当于SQL中的group by,单个分组用指标聚合,terms相当于分组后统计各组的count结果,如:
"aggs": {
"hot_count" : {
"terms" : {
"field" : "search_input.hot"
}
}
}
java代码可以参照专栏的第三篇博客 聚合查询。
二、联想词设计
1、仍然是百度搜索,在我们输入某个词后,会出现搜索自动补全,这种也可以称为搜索联想词,如:

(一)、联想词也可以设计成后台可配置以及采集用户搜索热词的,建议这两种方案同时使用,联想词后台可配置部分可以进行人工干预排序等,可以有效的提高运营手段。
es索引结构可为:
@Data
@A

本文介绍如何设计搜索引擎中的热词榜单与联想词功能,包括两种热词榜单的设计方式:一种是后台可配置,另一种是基于用户搜索数据计算得出;联想词功能则通过结合后台配置和用户搜索数据实现。
最低0.47元/天 解锁文章
1415

被折叠的 条评论
为什么被折叠?



