Apache Solr支持不同格式,例如数据库,PDF文件,XML文件,CSV文件。 为什么选择Apache Solr Apache Solr是搜索服务器,提供REST风格API。 Solr基于Lucene。 使用 Apache Zookeeper针对高流量进行优化。 Solr功能 先进的全文搜索功能。 XML,JSON和HTTP - 基于开放接口标准。 高度可扩展和容错。 同时支持模式和无模式配置。 分页搜索和过滤。 支持许多主要语言 丰富的文档。
默认为端口8983。 http://localhost:8983/solr/
配置Apache Solr Apache Solr附带无模式模式选项。这个选项允许用户构建有效的架构,而无需手动编辑模式文件。 建立核心(core) Solr服务器在独立模式下启动的配置称为核心, 在SolrCloud模式启动的配置称为集合。 首先,创建一个核心的索引数据。 solr create: -c :要创建的核心或集合的名称(必需)。 -d :配置目录,在SolrCloud模式非常有用。 -n :配置名称。这将默认为核心或集合的名称。 -p :本地Solr的实例的端口发送create命令; 默认脚本试图通过寻找运行Solr的实例来检测端口。 -s :Number of shards to split a collection into, default is 1. -rf :集合中的每个文件的份数。默认值是1。 使用核心名称和配置目录-d参数-c参数。对于所有其它参数使用默认设置。 solr create -c jcg -d basic_configs
JCG核心被填充在核心选择器上。
修改Schema.xml文件
子文件夹conf和data分别保存核心配置和索引数据。 在solr-6.3.0serversolrjcgconfmanaged-schema中添加如下内容:
indexed为true指定字段被索引。 stored指定字段是否被存储。 修改配置必须重启服务器。 solr stop -all 重启服务: solr start 索引数据 Apache Solr自带SimplePostTool的程序。
C:solr-6.3.0exampleexampledocs>java -jar post.jar -h
Usage: java [SystemProperties] -jar post.jar [-h|-] [ [...]] 索引数据: 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# 进行检索
安装Apache Solr