接口功能架构图--自动补全
2018-04-11 15:31:03 0 举报
登录查看完整内容
elasticsearch的纠错接口功能架构图
作者其他创作
大纲/内容
my_suggest中字段type:attribute(源数据)、history(历史记录)
my_fabric
isHistory:true
每次查询,消息队列或者异步推送关键字
关键词提取
redis
问题一:在不使用redis的情况下,能否查询两个不同的索引(fabric和suggest)进行补全,并合并结果集?问题二:ES能否通过多个字段进行纠错?如果只能单个字段,考虑my_fabric新增字段,由产品线将多个字段内容整合到同一字段,提供纠错和基于索引补全的词根;问题三:调用基于索引的补全时,my_fabric的新字段,是否能分解词根,并返回关键词,而非返回字段全部内容(纠错同样要考虑此问题)?
① 安装redis,从redis中获取
合并基于历史记录补全和基于索引补全接口
SuggestController
my_goods
search
问题:调用方如何知道什么时候该调用什么接口(基于历史、基于索引)?
每次查询,更新redis,记录count和time
① 未安装redis基于历史补全
纠错查询 (post)
① 基于索引补全:使用my_fabric索引的新字段(整合多个字段内容);② 基于历史补全:有redis,调用redis,没有则使用my_suggest索引(需要数据源);③ 自动补全的先后顺序,先历史,数量不足,再查找索引记录?考虑有无redis的情况;
ElasticSearch
基于历史自动补全(get)
数据库
my_suggest索引数据推送方式:a. 产品线提供关键词库,由数据库推送到索引(只提供给\"基于索引补全\"使用,保存type为attribute)b. 搜索的记录保存到redis或者my_suggest(type为history)
方案一
my_suggest
① 安装redis,基于历史补全
自动补全(get)
有安装redis时,则从缓存中获取推荐词,更新分值和过期时间
② 基于索引补全
② 未安装redis时
基于索引自动补全(get)
方案二
0 条评论
回复 删除
下一页