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来做搜索功能

浙公网安备 33010602011771号