Solr管理界面以及标准接口说明

1. Solr简介:

       Solr是一个基于Lucene的Java搜索引擎服务器。Solr 提供了层面搜索、命中醒目显示并且支持多种输出格式(包括 XML JSONPython、Ruby Php、csv格式)。它易于安装和配置,而且附带了一个基于 HTTP 的管理界面。Solr已经在众多大型的网站中使用,较为成熟和稳定。Solr 包装并扩展了 Lucene,所以Solr的基本上沿用了Lucene的相关术语。更重要的是,Solr 创建的索引与 Lucene 搜索引擎库完全兼容。通过对Solr 进行适当的配置,某些情况下可能需要进行编码,Solr 可以阅读和使用构建到其他 Lucene 应用程序中的索引。此外,很多 Lucene 工具(如Nutch、 Luke)也可以使用Solr 创建的索引。


2.solr we管理界面的主界面说明;

  1)  访问solr主页,http://服务器ip:端口(默认为80)/solr,此文档说明的solr服务是部署在tomcat下,默认显示此页内容,包含solr版本(此版本为7.2),包含系统内存和jvm内存的使用情况,jvm参数等;

  2)logging 日志信息

可以查看在使用solr过程中产生的日志信息,也可以临时改变日志设置;

   3)Core Admin 索引库管理

这个界面很重要,这可以使多核的配置,索引库的优化等,变得非常简单;
主要功能包括:Add Core(添加核心,即索引库),Unload(卸载核心),Rename(重命名核心),Optimize(优化索引库)。如我这里是三个核心。

  4)Java Properties java属性

Javatomcat一些属性信息,jdk版本信息等等

  5)Thread Dump 中可以看到你的JVM 中的所有活动线程的Thread Dump


3.Core selector核心选择器

    每个核心中有大量核心相关页面。这些核心相关页面允许你做下面的事情:

1)查看核心相关的属性,例如,你可以在主核心(例如,core0)页面查看到 Lucene segments 的数量等基本信息。

2)从 Analysis 分析文本内容;

     此处可以分析你所配置的分词器是否生效,可以选择已经配置分词的字段,输入一句话,Analyse Values可以查看是否分词;

3)使用 Query 执行查询。

 Query操作说明

  http://localhost:8080/solr/test/select?q=name:小明&sort=id desc&start=0&rows=2&fl=name,id&mm=AND&hl=true&hl.fl=name&hl.simple.pre=<font color="red>&hl.simple.post=</font>

 返回类型:查询后结果集类型,默认类型为json,在请求中可以设置返回类型

  请求连接:http://localhost/solr/#/core0/?为默认实例参数

  描述:每个参数的实际作用描述

返回类型

请求连接

描述

json

fl=title,id

是逗号分隔的列表,用来指定文档结果中应返回的 Field 集。默认为 “*”,指所有的字段。

json

defType=lucene

指定query parser,常用defType=lucene, defType=dismax, defType=edismax

 

json

qf=content

query fields,指定solr从哪些field中搜索。

json

Pf=参数

用于指定一组field,当query完全匹配pf指定的某一个field时,来进行boost。

json

fq=参数:查询内容

filter query,过虑查询。

json

mm=AND

minimal should match。Solr支持三种查询clause,即“必须出现”, “不能出现”和“可以出现”,分别对应于AND, -, OR。

在默认情况下,使用OR这个clause。mm用于设置在使用OR这个clause时,需要出现最少的满足条件的clause数量。

xml

wt=xml

writer type,指定输出格式,可以有 xml, json, php,ruby等

json

df=title

默认的查询字段title。 

json

qt=standard

query type,指定那个类型来处理查询请求,一般不用指定,默认是standard。

 

 

 


4)Solrt通过url方式删除数据

Update操作说明

发送请求:

http://localhost:8080/solr/update/?stream.body=

<delete><id>id</id></delete>&stream.contentType=text/xml;charset=utf-8&commit=true

返回处理结果:主要看状态码

执行正常

<response>

<lst name="responseHeader">

<int name="status">0</int>

<int name="QTime">112</int>

</lst>

</response>

执行失败,原因是请求的参数有误

<response>

<lst name="responseHeader">

<int name="status">400</int>

<int name="QTime">4</int>

</lst>

<lst name="error">

<str name="msg">

no field name specified in query and no default specified via 'df' param

</str>

<int name="code">400</int>

</lst>

</response>

根据id删除数据

根据查询参数条件删除数据

返回类型:查询后结果集类型,默认类型为json,在请求中可以设置返回类型

请求连接:http://192.168.40.11/solr/#/core0/?为默认实例参数

描述:每个参数的实际作用描述

返回类型

请求连接

描述

xml

http://localhost:8080/solr/core0/update/?stream.body=

<delete><id>id</id></delete>&stream.contentType=text/xml;charset=utf-8&commit=true

根据id值来删除索引信息

xml

http://localhost:8080/solr/core0/update/?stream.body=

<delete><query>参数</query></delete>&stream.contentType=text/xml;charset=utf-8&commit=true

 

根据查询条件来删除索引信息

例如删除所有: <delete><query>*:*</query></delete>

stream 相关参数:

stream.file=(服务器本地文件);

stream.url 分别指到你的删除文本,这里是直接字符串内容用 stream.body参数。

commit 参数是指提交,提交了才能看到删除效果。

删除指令有两种,一是:用 <id></id>包装;二是:<query></query>包装。指令都很明显,一个是 id值(是在schema.xml的 uniqueKey所指字段的值,而不是索引内部的 docId);query值是查询串,如:title:"solr lucene"


增量更新

http://localhost:8080/solr/test/dataimport?entity=solr_test&command=delta-import&clean=false&commit=true&optimize=true 

高亮查询  
http://localhost:8080/solr/test/select?q=name:lif&sort=id desc&start=0&rows=2&fl=name,id&mm=AND&hl=true&hl.fl=name&hl.simple.pre=<font color=red>&hl.simple.post=</font>

删除
http://localhost:8080/solr/test/update?_=1517479941819&commitWithin=1000&overwrite=true&wt=json  post <add><delete><id>8</id></delete></add>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值