直接来一段英文看
Many people new to Lucene and Solr will ask the obvious question: Should I use Lucene or Solr?
The answer is simple: if you're asking yourself this question, in 99% of situations, what you want to use is Solr.
A simple way to conceptualize the relationship between Solr and Lucene is that of acar and its engine. You can't drive an engine, but you can drive a car. Similarly, Lucene is a programmatic library which you can't use as-is, whereas Solr is a complete application which you can use out-of-box.
英语不好的没问题:
Solr和Lucene的关系就是汽车和它的发动机的关系.
lucene 就相当于发动机 ,solr就相当于汽车。
你不能直接开发动机(光秃秃的一个嗡嗡响的四方发动机,没看过的去看看,问问度娘)这个就是Lucene,但是你可以开车啊(四个圈圈,加一个发动机,加上一些铁皮,汽油等组成的铁壳子),这个就是solr
用上面的话觉得解释的土:
优雅的:
Lucene更像是一个SDK。
有完整的API族以及对应的实现。
你可以利用这些在自己的应用里实现高级查询(基于倒排索引技术的),Lucene对单机或者桌面应用很实用很方便。
但是Lucene,需要开发者自己维护索引文件,在多机环境中备份同步索引文件很是麻烦。于是,就有了Solr。
而Solr是一个有HTTP接口的基于Lucene的查询服务器.
封装了很多Lucene细节,自己的应用可以直接利用诸如 .../solr?q=abc 这样的HTTP GET/POST请求去查询,维护修改索引
所以说:
Solr和Lucene的本质区别有以下三点:搜索服务器,企业级和管理。 Lucene本质上是搜索库,不是独立的应用程序。而Solr是。 Lucene专注于搜索底层的建设,而Solr专注于企业应用。 Lucene不负责支撑搜索服务所必须的管理,而Solr负责。 一句话概括Solr: Solr是Lucene面向企业搜索应用的扩展我们能用Lucene直接开发吗?
比如我想在汽车在小轿车上车顶上装一个避雷针(防止挨劈)
能.给你一个发动机,找铁皮 ,找汽油,找管子,找。。。。。我可以自己组成一个小汽车,然后在小汽车的车顶上我在装一个避雷针.ok我的工作完成了。
我们能用solr直接开发吗?
比如我想在汽车在小轿车上车顶上装一个避雷针(防止挨劈)
能.在小汽车的车顶上我在装一个避雷针.ok我的工作完成了。
所以说:
solr基于Lucene的扩展而已,笔者发布文章时
看到了发布的版本是
Apache Lucene 6.4.1 Apache Solr 6.4.1