背景:
sorl因此lucene为内核开拓的企业级搜索运用运用程序可以通过http要求办法来提交索引,查询索引,供应了比lucene更丰富的查询措辞,是一个高性能,高可用环境全文搜索引擎
sorl与es的差异:

1.当实时建立索引的时候,sorl会产生壅塞而es不会,es查询性能要高于sorl。
2.在不断动态添加数据的时候,sorl的检索效率会变得低下而es没有什么变革。
3.Sorl利用zookeeper进行分布式管理,而es自身带有分布式管理功能。
Sorl一样平常都要支配到web做事器上,比如Tomcat。启动tomcat的时候须要配置Tomcat与sorl的关联。
4.Sorl支持更多的格式数据【xml,json,csv等】而es仅支持json文件格式。
5.Sorl是纯搜索运用的有力办理方案,但是es更适用于新兴的实时搜索运用。纯挚的对已有数据进行检索的时候,sorl效率更好,,高于es。
6.Sorl官网供应的功能更多,而es本身更看重于核心功能,高等功能多有第三方插件。
1、JDK的哀求
Solr 4.10 哀求JDK版本必须是1.7或更高。
2、sorl的下载地址
https://dlcdn.apache.org/lucene/solr/下载得到zip压缩包,下载的版本为8.11.2. 文件大小209MB旁边。对压缩包进行解压可以查看到相应的目录构造3、安装
1、 将solr-8.11.2.zip文件拷贝到D盘;(或者其他盘都可以,只要目录中不要涌现中文就行。)
2、 解压solr-8.11.2.zip文件,得到solr-8.11.2目录。
3、 运行 cmd 实行命令sorl start(进入C:\solr-8.11.2\bin):
4、浏览器打开http:localhost:8983,可以查看到sorl的一些基本信息
5、运行cmd实行命令sorl stop -p 8983,进行停滞做事
6、至此代表sorl已经安装成功了
7、问题的办理
add core 报错Error CREATEing SolrCore 'new_core': Unable to create core [new_core] Caused by: Can't find resource....
办理方案:拷贝solr-8.11.2\server\solr\configsets\_default下面的conf到solr-8.11.2\server\solr\new_core下面,重新页面上点击add core就可以进行添加成功了
8、导入测试的数据
java -Dtype=text/csv -Durl=http://localhost:8983/solr/new_core/update -jar post.jar books.csv
9、访问索引文档
查询参数
q - 查询字符串,必须的。fl - 指定返回那些字段内容,用逗号或空格分隔多个。start - 返回第一条记录在完全找到结果中的偏移位置,0开始,一样平常分页用。rows - 指定返回结果最多有多少条记录,合营start来实现分页。sort - 排序,格式:sort=<field name>+<desc|asc>[,<field name>+<desc|asc>]。示例:(inStock desc, price asc)表示先 "inStock" 降序, 再 "price" 升序,默认是干系性降序。wt - (writer type)指定输出格式,可以有 xml, json, php, phps。fq - (filter query)过虑查询,浸染:在q查询符合结果中同时是fq查询符合的,例如:q=&fq=price:[0 TO 6],找所有的内容,并且price是0到6之间的首字母搜索现在我们将见告你如何搜索记录,如果我们只知道起始字母或单词,不记得完全的标题。我们可以用下面的查询检索结果。
http://localhost:8983/solr/new_core/select?q=name:"A"
输出将列出所有的书本字母A盯着
按名称搜索
我们将用它的名字检索书的细节。要做到这一点,我们将利用下面的语法。URL中的参数“Q”是查询事宜。
打开浏览器下列URL。赤色字体笔墨可以打开导入的book.csv的文件
http://localhost:8983/solr/new_core/select?q=name:"A Game of Thrones"
搜索利用的条件
Solr的支持条件的搜索。我们可以设置条件,我们的查询供应了“FQ”参数。不才面我们将见告你如何查询价格低于¥6的书。
http://localhost:8983/solr/new_core/select?q=&fq=price:[0 TO 6]
输出将只列出这是低于$ 6的书本。