您现在的位置是:网站首页> 编程开发> 性能 编程开发

使用canal实现搜索引擎

2021-08-19性能 1176人已围观

简介搜索功能查询:按关键字精确/模糊匹配查询分析:分析查询中每一个词在文本中的重要程度,并将其量化成权重,权重较低的词可能不会参与召回。这样可以避免当用户输入的查询词中包含一些权重低的词时,仍然按用户输入

使用canal实现搜索引擎

最后更新:2021-08-19 20:54:25

推荐指数

搜索功能

  • 查询:按关键字精确/模糊匹配

  • 查询分析:

    • 分析查询中每一个词在文本中的重要程度,并将其量化成权重,权重较低的词可能不会参与召回。这样可以避免当用户输入的查询词中包含一些权重低的词时,仍然按用户输入的查询词限制召回,导致命中结果过少。

    • 用户在搜索苹果手机的同时,包含iPhone的内容也能被检索并呈现

    • 用户输入的query并不总是正确的,错误的输入可能导致查询结果不符合预期或者是无结果,因此需要对用户的输入进行拼写检查。

    • 根据系统内置的停用词典过滤查询中无意义的词(一般是使用频度过高的但不影响查询结果的词,比如标点符号、语气助词等)。例如:查询词“奔跑吧!兄弟”,经过停用词处理后标点符号“!”不参与召回;或者“你吃饭了吗”,经过停用词处理后语气助词“吗”不参与召回。

    • 分词是搜索引擎中一个基础但重要的组件,分词的结果直接影响搜索效果。比如:用户输入搜索短语 "惠百真山东产地大米", 分词后可拆解为  "惠百真" “山东” "产地" "大米" 词语后,去文档中匹配

    • 分词

    • 停用词

    • 拼写纠错

    • 同义词

    • 词权重

  • 排序

    • 对于符合查询条件的召回结果,按照指定条件排序后展现

  • 统计

    • 热词

    • 词语提示

搜索概要架构

图片1.png

很赞哦! (0)

文章评论

来说两句吧...

验证码: