Sphinx 与全文索引

全文索引创建过程

第一步:将源文档传给分词组件(Tokenizer)

分词组件做了以下事情:

  • 将文档分成一个一个的单词
  • 去除标点符号
  • 去除停词:英文(the / a / this / that ....)  中文 ( 是、的...)
  • 经过分词后得到的就是词元

第二步:将词元传给语言处理组件

语言处理组件做了以下事情(针对英文):

  • 将大小变成小写
  • 将单词复数变成单数形式
  • 将各种时态变成现在时,例如“drove”变成“drive”

第三步:将处理好的词传给索引组件(indexer)

  • 根据词创建字典(字典的key是传过来的词,value是词对应的记录的id)
  • 对字典进行排序

 

根据索引进行搜索:

第一步:用户输入查询语句

第二步:对输入查询的语句进行词法分析,语法分析及语言处理

第三步:将处理好的词组传给搜索引擎(Sphinx),搜索索引,得到符合语法的文档

第四步:根据得到文档和查询语句的相关性,进行排序

转载于:https://www.cnblogs.com/xiaoliwang/p/9484533.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值