Solr8.0速成系列 | Solr介绍,概念扫盲篇 01

版权声明:专注于技术分享,原创版权归 十年呵护所有,转载请标明原文链接,更多信息可关注 wwws.shinians.com 官网 https://blog.csdn.net/zzhuan_1/article/details/90200554

目录

什么是solr

三者的概念

技术选型 Lucene VS Solr  VS Elasticsearch(ES)

为什么要solr

应用场景

End


开篇前

solr8.0系列文章即将开启更新,也期望自己做一个版本最新和功能点最全面的系列课程,帮助更多的小伙伴

solr工作当中用到还是很多的,当初毕业接触的第一中间件就是solr,所以希望给大家能够沉淀些东西,谢谢关注转发

什么是solr

Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。

Solr可以独立运行,运行在Jetty、Tomcat等这些Servlet容器中,Solr 索引的实现方法很简单,用 POST 方法向 Solr 服务器发送一个描述 Field 及其内容的 XML 文档,Solr根据xml文档添加、删除、更新索引 。Solr 搜索只需要发送 HTTP GET 请求,然后对 Solr 返回Xml、json等格式的查询结果进行解析,组织页面布局。Solr不提供构建UI的功能,Solr提供了一个管理界面,通过管理界面可以查询Solr的配置和运行情况。

三者的概念

Lucene VS Solr  VS Elasticsearch(ES):三者之间的一个联系, solr和elasticsearch都是基于Lucene实现的

Lucene是一个开放源代码的全文检索引擎工具包,它不是一个完整的全文检索引擎,Lucene提供了完整的查询引擎和索引引擎,目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者以Lucene为基础构建全文检索引擎。

而solr和elasticsearch都是基于该工具包做的一些封装

Solr是一个有HTTP接口的基于Lucene的查询服务器,封装了很多Lucene细节,自己的应用可以直接利用诸如 .../solr?q=abc 这样的HTTP GET/POST请求去查询,维护修改索引。目标是打造一款企业级的搜索引擎系统,它是一个搜索引擎服务,可以独立运行,通过Solr可以非常快速的构建企业的搜索引擎,通过Solr也可以高效的完成站内搜索功能。

Elasticsearch也是一个建立在全文搜索引擎 Apache Lucene基础上的搜索引擎。采用的策略是分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。

技术选型 Lucene VS Solr  VS Elasticsearch(ES)

Lucene使用上更加灵活,但是你需要自己处理搜素引擎系统架构,以及其他附加附加功能的实现。

而Solr帮你做了更多,但是是一个处于高层的框架,Lucene很多新特性不能及时向上透传,所以有时候可能发现需要一个功能,Lucene是支持的,但是Solr上看不到相关接口

solr利用zookpper进行分布式管理,而elasticsearch自身带有分布式协调管理功能;
solr比elasticsearch实现更加全面,solr官方提供的功能更多,而elasticsearch本身更注    重于核心功能,高级功能多由第三方插件提供;
solr在传统的搜索应用中表现好于elasticsearch,而elasticsearch实时搜索应用方面比solr表现好!(常见面试题)

概括总结:

传统搜索:从静态数据库中筛选出符合条件的结果,这种结果往往是不可变得、静态的。(可选用solr)

实时搜索:则是说用户对于搜索的结果是实时变化的。(可选用es)

个人感觉还是应该看数量多少,即使是实时搜索要是量不大,用solr也是可以的。

Lucene:可以实现搜索,但是需要大量的开发工作,索引库的维护及优化,查询的优化等问题都需要我们自己来解决。不推荐使用。

为什么要solr

1、solr是将整个索引操作功能封装好了的搜索引擎系统(企业级搜索引擎产品)

2、solr可以部署到单独的服务器上(WEB服务),它可以提供服务,我们的业务系统就只要发送请求,接收响应即可,降低了业务系统的负载

3、solr部署在专门的服务器上,它的索引库就不会受业务系统服务器存储空间的限制

4、solr支持分布式集群,索引服务的容量和能力可以线性扩展

...

应用场景

站内搜索、全文检索、 关系型数据库做全文搜索字段、数据量很大...

End

此篇是solr系列第一篇,大家对概念的有个简单了解,接下来我们就正式开始拉,加油

猜你喜欢

转载自blog.csdn.net/zzhuan_1/article/details/90200554