Solr使用笔记

solr 需要运行在一个Servlet容器中,Solr8.2.0要求jdk使用1.8以上,Solr默认提供Jetty(java写的Servlet容器),本教程使用Tocmat作为Servlet容器

solr

 jdk

Tomcat

 

Solr是基于Lucene开发的开源  全文搜索 服务器。

采用 反向索引(倒排索引结构),即从关键字 到文档的 映射过程。

Solr的资源以Document为对象进行存储,

每个文档由一系列的 Field 构成,

每个Field 表示资源的一个属性。

 

每个Filed由 一系列term 组成。

文档的Field可以被索引, 以提工高性能的搜索效率。

一般情况下文档都包含一个能唯一表示该文档的id字段。

 

2.说一下Solr的倒排索引

倒排索引就是从文档内容到文档序号的过程,将文档内容用solr自带分词器进行分词,然后作为索引,用二分法将关键字与排序号的索引进行匹配,进而查找到对应文档。

 

3. 为什么要使用Solr?

3.1 solr本身也可以看成数据库,(no sql类型),但它比数据库搜索速度更快(因为使用 索引 存储),所以在项目中我们一般把搜索的部分交给solr,

就像我们在京东(电商平台)首页所看到的商品信息,并不是来自数据库,而是来源于sorl的索引库

3.2 数据库本身不能实现分词效果,而只能使用模糊查询,但是模糊查询非常低效,查询速度比较慢,

由于在实际生活中,一般搜索是用的比较多的,这样数据库压力自然就很大,所以我们就采用了 倒排索引结构  的solr来做搜索功能

 

posted on 2019-10-09 17:18  小金人啦  阅读(122)  评论(0)    收藏  举报

导航