Solr启动方式
1. Solr默认提供Jetty(java写的Servlet容器)
建议第一次学习solr的时候用Jetty,它很快,稳定,成熟并且易于管理和熟悉,如Google使用Jetty作为引擎。
具体方法:解压solr文件夹,进入example文件夹有start.jar文件,输入命令行:java -jar start.jar
。浏览器访问:http://localhost:8983/solr/,你看到的就是solr的管理界面
2. 使用tomcat服务器。
需要部署solr war文件。具体部署方法见tomcat部署solr。最后访问http://localhost:8080/solr/#/
Solr中实例(Core/Collection)
solr中有一个重要的名词,即Core实例。一个solecore对外单独提供索引和搜索接口,一个solrcore对应一个索引目录。solrhome中可以创建多个solr运行实例solrcore。每个solrcore提供单独的搜索和索引服务。
解压后的solr文件夹中example代表一个solr工程的例子目录,下一层的solr文件夹包含了默认配置信息的Solr的Core目录,再下一层的collection1即自带的solrcore。
solr中Schema File
solr中有两个重要的配置文件: solrconfig.xml(索引管理配置文件)和schema.xml(创建索引文件)。下面讲讲schema.xml(创建索引文件),它位于内核目录下的conf目录下。
在schema.xml中建立solr索引字段就类似于数据中在表中定义相关的数据字段,其字段的种类包含多值字段、动态字段、复制字段、唯一键字段等。这个schema.xml中配置的所有字段相当于数据库中的一张大表。
- field: 定义一种字段,如
<field name="name" type="text_ik" indexed="true" stored="true" multiValued="false" />
- fieldType: 字段类型属性,如
<fieldType name="text_ik" -class="solr.TextField">
- name: 字段类型名称(可以理解为Java的 数据类型名称。例如: int、double、String等Java中的数据类型名称)
- class: 数据类型(默认文本数据即可,还有其他的例如:字符串、浮点、整形等)
- type: 指定该字段用哪个分词器匹配。
- analyzer:字段类型指定的分词器