版本:6.6.0
一、启动和关闭
1.下载solr-x.x.x.zip后解压,进入bin,用下面命令运行solr。
solr.cmd start // 已默认端口启动solr,当然也可以使用 solr.cmd start -p 8984 来设置想要的端口号
2.通过浏览器访问http://localhost:8983/solr,进入下面的界面说明启动成功。
3.运行下面代码关闭solr
solr.cmd stop -all
二、创建核心(core)
当solr的服务器在独立模式下启动时称为核心,当它在SolrCloud模式启动的配置称为集合。现在使用的是独立模式。
solr.cmd create [-c name] // name就是你的core的名字
输入命令完毕之后出现(如下),就代表创建core完毕。刷新首页就能选择刚创建的core了。
{
"responseHeader":{
"status":0,
"QTime":5239},
"core":"test"}
三、索引配置
1. document
向core中存储数据后,每一条记录叫做docment是solr用户与solr服务器进行交互的基本单元,solr将一个doc中的数据当做一个整体进行处理,因此用户在传递信息时都是以doc为单位进行传输的,并且一次性可以传送一个或者多个。类似于mysql中的一条记录。
2. field
最小存储单元,一个doc节点中主要包含的数据对象为Field(域)。solr服务器在接受到XML格式或者JSON格式或其他格式的数据后对其进行解析,提取Field中的数据进行操作。类似于mysql中的一列。
如果使用没有定义的field(域)进行索引或者更新,solr服务器会返回一个报错信息。
3. schema
定义field,实现对数据的索引。进入solr页面中的schema页面后。可以看到在顶部有3个按钮。
常用属性说明
index:指定字段是否被索引。
stored:指定字段是否被存储。如果不选择的话在查询时该字段就不会被返回。
multiValues:指定字段是否能被存储多个值(数组)。
dynamic field和copy field
dynamic field:根据通配符动态匹配字段。例如,设置name为 *_i
,那么所以以 _i
结尾的field都会走这个配置。
copy field:需要输入source和dest,在为数据建立索引的时候将source中的值保存到dest中。所以通常dest是设置为multiValues,将多个field copy到某一个字段中用于实现全文索引。
在这里修改的所有内容都在server\solr[core_name]\conf\managed-schema中
四、索引数据
选择左边菜单的documents,选择数据类型然后进行数据的录入。
也可以通过工具导入文件,详细操作方法见:这里
默认以id字段作为唯一主键,如果提交的内容中id已存在那么会进行更新。
五、查询
1.
2.也可以通过url的方式来查询索引(不具体扩展)。