全文检索笔记

木易 1642 0 0

全文检索流程分析图

图片1.png

索引库中是如何存储的?

数据库的一行数据会存储为一个document对象,一条记录的一列会存储为一个field,不会将数据库的所有数据都存储到索引库。

Screenshot_20190517-163805_WPS图片.jpg

索引是如何创建过程

流程图

qq.jpg



qq2图片.jpg


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. 根据查询结果结合自然权重和人为权重进行显示排序

自然权重

影响自然权重的两个因素tfdf

tf:即此Term在此文档中出现了多少次。tf 越大说明越重要

df:即有多少文档包含Termdf 越大说明越不重要。

 

人为设置权重

可以给 Document Field 增加权重(Boost),使其在搜索结果排名更加靠前。缺省情况下,搜索结果以 Document.Score 作为排序依据,该数值越大排名越靠前。Boost 缺省值为 1。只要 Boost 足够大,那么就可以让某个命中结果永远排第一位



评论区
请写下您的评论...
暂无评论...
猜你喜欢
框架 948 lucene依赖jardependencygroupIdorg.apache.lucene/groupIdartifactIdlucene-highlighter
框架 1304 :2.3.1.RELEASE,elasticsearch版本:7.6.0demo下载参考:springboot+elasticsearchdemo开始前请阅读:elasticsearch官方档项目pom
activemq 1081 ActiveMQ
linux系统 4159 linux件目录类指令pwd:查看当前工作目录mkdira:创建目录a,mkdir-pa/b:创建多级目录/a/brmdir:删除空目录rm-rf:删除目录touch件名:创建空件cp:拷
其他 1131 一、表格 省 简称 省市 河北 冀A 河北石家庄 河北 冀B 河北唐山 河北 冀C 河北秦皇岛 河北 冀D 河北邯郸 河北 冀E 河北邢台 河北 冀F 河北保定 河北 冀G 河北张家口 河北 冀H 河北承德 河北 冀J 河北沧州 河北 冀R 河北廊坊 河北 冀T 河北衡水 山西 晋A 山西太原 山西 晋B 山西大同 山西 晋C 山西
blog java
其他 2003 java以下皆为抄录,来源于《疯狂java讲义》1.1位运算符 &按位与。当两位同时为1时才返回1 |按位或。只要有一位为1即可返回1 ~按位非。单目运算符,将操作数的每个位(包括符
java框架 1378 springboot整合elasticsearch框架实现引demo配置说明参考:http://www.jiajiajia.club/blog/artical/Ja4t7X/378
分布式项目管理工具 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
目录
没有一个冬天不可逾越,没有一个春天不会来临。最慢的步伐不是跬步,而是徘徊,最快的脚步不是冲刺,而是坚持。