全文检索笔记
全文检索流程分析图
索引库中是如何存储的?
数据库的一行数据会存储为一个document对象,一条记录的一列会存储为一个field,不会将数据库的所有数据都存储到索引库。
索引是如何创建过程
流程图
1. 分析文档,通过分词组件进行分词,获得词元(token)
2. 通过语言处理组件,
2.1 进行大写转小写,
2.2 复数变单数,
2.3 过去式,将来式转换为现在式,获得词(Term)
3. 获取Term
3.1获取Term词典
3.2 对Term词典进行排序
3.3合并相同的Term成文档倒排链表
3.4存入索引库
搜索流程
1. 根据搜索关键词创建语句进行查询
2. 根据查询结果结合自然权重和人为权重进行显示排序
自然权重
影响自然权重的两个因素tf和df
tf:即此Term在此文档中出现了多少次。tf 越大说明越重要
df:即有多少文档包含Term。df 越大说明越不重要。
人为设置权重
可以给 Document 和 Field 增加权重(Boost),使其在搜索结果排名更加靠前。缺省情况下,搜索结果以 Document.Score 作为排序依据,该数值越大排名越靠前。Boost 缺省值为 1。只要 Boost 足够大,那么就可以让某个命中结果永远排第一位。
评论区
请写下您的评论...
猜你喜欢
blog
lucene全文检索(搜索)
框架
1142
lucene全文检索依赖jardependencygroupIdorg.apache.lucene/groupIdartifactIdlucene-highlighter
框架
1500
:2.3.1.RELEASE,elasticsearch版本:7.6.0demo下载参考:springboot+elasticsearchdemo开始前请阅读:elasticsearch官方文档项目pom
file
ActiveMQ笔记
activemq
1081
ActiveMQ笔记
blog
linux文件目录类指令笔记
linux系统
4336
linux文件目录类指令笔记pwd:查看当前工作目录mkdira:创建目录a,mkdir-pa/b:创建多级目录/a/brmdir:删除空目录rm-rf:删除目录touch文件名:创建空文件cp:拷
blog
全国车辆归属地检索表
其他
1834
一、表格
省
简称
省市
河北
冀A
河北石家庄
河北
冀B
河北唐山
河北
冀C
河北秦皇岛
河北
冀D
河北邯郸
河北
冀E
河北邢台
河北
冀F
河北保定
河北
冀G
河北张家口
河北
冀H
河北承德
河北
冀J
河北沧州
河北
冀R
河北廊坊
河北
冀T
河北衡水
山西
晋A
山西太原
山西
晋B
山西大同
山西
晋C
山西
blog
java笔记
其他
2307
java笔记以下笔记皆为抄录,来源于《疯狂java讲义》1.1位运算符 &按位与。当两位同时为1时才返回1 |按位或。只要有一位为1即可返回1 ~按位非。单目运算符,将操作数的每个位(包括符
java框架
1378
springboot整合elasticsearch框架实现全文索引demo配置说明参考:http://www.jiajiajia.club/blog/artical/Ja4t7X/378
file
git & github学习使用笔记
分布式项目管理工具
1220
git&github学习使用笔记
归档
2018-12
5
2019-01
2
2019-04
1
2019-05
2
2019-06
1
2019-11
1
2019-12
3
标签
博客
java
linux
springboot
笔记
问题
cloud
目录
没有一个冬天不可逾越,没有一个春天不会来临。最慢的步伐不是跬步,而是徘徊,最快的脚步不是冲刺,而是坚持。