首页 > Web开发 > 详细

全文检索(Lucene&Solr)

时间:2018-10-18 10:36:18      阅读:158      评论:0      收藏:0      [点我收藏+]

全文检索(Lucene&Solr)

1)什么是全文检索?为什么需要全文检索?

结构化数据(mysql等)方便查询,而非结构化数据(如多篇文章)是难以查询到自己需要的,所以要使用全文检索。

全文检索:将非结构化数据的内容提取一部分,然后重新组织,使其有一定结构,然后就能以此快速的查找需要的信息,提取整理后的信息称之为索引

应用:如淘宝,京东的搜索商品;百度的索引引擎

2)原始文档:互联网上的网页,数据库中的数据,磁盘上的文件

索引库:索引+原始文档

语汇单元:一个term就是一个单元

 

3)步骤

创建文档对象:将一个非结构化数据的属性(称为域,如文档名称与路径等)提取出来

 

分析文档:去除文档的一些标点符号与一些没意义的词,其他的单词每个设置为特定的term,term的名称就是这些个单词

 

创建索引:将这些term作为索引

 

保存索引和文档到索引库

 

搜索》创建查询》执行查询》渲染结果

 

4)通过索引找到的结果可能有多个,他们是怎样排序的呢?

通过索引找到的数据,谁出现的索引词汇数量比较多就排在去前面

 

还有一种是反向查询,先查找内容,再查询文本属性,这就比较慢了

 

5)mysql数据库往往满足不了高级的搜索;所以使用全文搜索

Lucene实现站内搜索工作量比较大,性能维护都不好;

所以当下最优的方案是Solr,它提供了较为完备的搜索引擎解决方案

全文检索(Lucene&Solr)

原文:https://www.cnblogs.com/xdzy/p/9808380.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!