基于solr实现通用:输入提示、纠错、拼音搜索、繁体搜索方案

简介: 假期重新把之前在新浪博客里面的文字梳理了下,搬到这里。文本介绍基于solr实现通用:输入提示、纠错、拼音搜索、繁体搜索方案。

摘要

输入提示、纠错、关联推荐、拼音到汉字。依托构建索引阶段的全覆盖词条,查询阶段的空格分词、前缀匹配    

优化schema配置,可以优化索引体积,提升资源利用率    

独立化提示索引结构,使得提示的排序可以灵活制定


需求描述

输入汉字的拼音,简拼、全拼、缩写等提示搜索汉字     输入汉字前缀,提示相关汉字     输入繁体或者繁体前缀,提示相关汉字     输入汉字,提示相关汉字     提示内容的二次推荐     参考链接http://fuwu.taobao.com

image.png

实现方案      

前端          

    ajax 异步请求。对输入事件补货并且发起异步请求,要求后端返回速度快。     

 

后端        

独立solrcore 管理具体业务场景下的,提示内容、提示排序规则、提示内容更新、屏蔽、降权、加权等。          

采取solr来实现,主要是配置solr schema.xml 文件,其中对数据类型的定义最为关键          

默认solr 自带的spellcheck对排序的多样性有不足。          

另外,独立部署可以灵活扩展关联输入提示的其他业务逻辑。        

 

配置样例

image.png

缺点 

ICU 对多音字支持不是特别友好    

配置几点说明words  不索引,只存储,simwordspinwords 只索引不存储;    

构建索引全覆盖,包括拼音、汉字啥的,但是,查询按空格分词    

查询查询 simwordspinwords 都查,返回words,排序呢 跟进具体场景确定。

目录
相关文章
|
1月前
|
机器学习/深度学习 人工智能 算法
如何将传统的关键字搜索与现代向量搜索结合?
如何将传统的关键字搜索与现代向量搜索相结合,找到更相关的搜索结果优化 RAG。
如何将传统的关键字搜索与现代向量搜索结合?
|
1月前
|
人工智能 开发工具 git
语义搜索测试
语义搜索测试
38 0
|
1月前
文本搜索命令
文本搜索命令
23 0
|
7月前
|
小程序 JavaScript
小程序搜索弹出搜索内容功能(模糊查询)
小程序搜索弹出搜索内容功能(模糊查询)
43 0
|
10月前
|
人工智能 自然语言处理 算法
Similarities:精准相似度计算与语义匹配搜索工具包,多维度实现多种算法,覆盖文本、图像等领域,支持文搜、图搜文、图搜图匹配搜索
Similarities:精准相似度计算与语义匹配搜索工具包,多维度实现多种算法,覆盖文本、图像等领域,支持文搜、图搜文、图搜图匹配搜索
Similarities:精准相似度计算与语义匹配搜索工具包,多维度实现多种算法,覆盖文本、图像等领域,支持文搜、图搜文、图搜图匹配搜索
|
小程序 数据库
小程序搜索功能,云开发搜索,小程序云开发模糊搜索,同时搜索多个字段
小程序搜索功能,云开发搜索,小程序云开发模糊搜索,同时搜索多个字段
251 0
|
SQL 人工智能 自然语言处理
【Solr】之使用结巴分词模拟搜索商品1
【Solr】之使用结巴分词模拟搜索商品1
108 0
【Solr】之使用结巴分词模拟搜索商品1
|
前端开发 小程序 关系型数据库
小程序中实现搜索功能
小程序中实现搜索功能
小程序中实现搜索功能
|
小程序 容器
小程序实现搜索功能续
小程序实现搜索功能续
小程序实现搜索功能续