Solr基于Lucene。
利用 Apache Zookeeper针对高流量进行优化。
Solr功能前辈的全文搜索功能。
XML,JSON和HTTP - 基于开放接口标准。
高度可扩展和容错。
同时支持模式和无模式配置。
分页搜索和过滤。
支持许多紧张措辞
丰富的文档。
安装Apache Solrbin:启动和停滞做事器的脚本。
example: 示例。
server/logs 文件夹,所有Solr日志都写入该文件夹。
server/solr文件夹包含不同的凑集或核心(core/collection)。对付各凑集或核心的配置和数据都存储在相应的凑集或核心文件夹。
Solr内置Jetty做事器
启动Solrsolr start
默认为端口8983。
http://localhost:8983/solr/
配置Apache Solr
Apache Solr附带无模式模式选项。这个选项许可用户构建有效的架构,而无需手动编辑模式文件。
建立核心(core)Solr做事器在独立模式下启动的配置称为核心,
在SolrCloud模式启动的配置称为凑集。
首先,创建一个核心的索引数据。
solr create
:
-c <name>
:要创建的核心或凑集的名称(必需)。
-d <confdir>
:配置目录,在SolrCloud模式非常有用。
-n <configName>
:配置名称。这将默认为核心或凑集的名称。
-p <port>
:本地Solr的实例的端口发送create
命令; 默认脚本试图通过探求运行Solr的实例来检测端口。
-s <shards>
:Number of shards to split a collection into, default is 1.
-rf <replicas>
:凑集中的每个文件的份数。默认值是1。
利用核心名称和配置目录-d
参数-c
参数。对付所有其它参数利用默认设置。
solr create -c jcg -d basic_configs
JCG核心被添补在核心选择器上。
修正Schema.xml文件
子文件夹conf和data分别保存核心配置和索引数据。
在solr-6.3.0\server\solr\jcg\conf\managed-schema中添加如下内容:
<field name=\"大众cat\"大众 type=\公众text_general\"大众 indexed=\公众true\"大众 stored=\公众true\"大众/>
indexed
为true
指定字段被索引。
stored
指定字段是否被存储。
修正配置必须重启做事器。
solr stop -all
重启做事:
solr start索引数据
Apache Solr自带SimplePostTool的程序。
C:\solr-6.3.0\example\exampledocs>java -jar post.jar -h
Usage: java [SystemProperties] -jar post.jar [-h|-] [<file|folder|url|arg> [<file|folder|url|arg>...]]
索引数据:
java -Dtype=text/csv -Durl=http://localhost:8983/solr/jcg/update -jar post.jar books.csv
-dtype - 数据文件的类型。
-Durl - JCG核心的地址。
导航到以下网址并选择核心JCG:
按名称搜索
http://localhost:8983/solr/jcg/select?q=name:\"大众A Clash of Kings\"大众
首字母搜索
http://localhost:8983/solr/jcg/select?q=name:\"大众A\公众
利用通配符
http://localhost:8983/solr/jcg/select?q=name:\"大众of\公众
利用条件
如何查询价格低于¥6的书。
http://localhost:8983/solr/jcg/select?q=&fq=price:[0 TO 6]
Solr的客户端API
有不同的客户端API的可用来连接到Solr的做事器。
SolRuby – To connect from Ruby
SolPHP – To connect from PHP
PySolr – To connect from Python
SolPerl – To connect from Perl
SolrJ – To connect from Java
SolrSharp – To connect from C#
进行检索