solr5.5.5入门实例

来源:互联网 发布:淘宝客怎么开通 编辑:程序博客网 时间:2024/05/17 21:44
solr是apache开源的搜索引擎,底层基于lucene,将lucene难以使用的api,通过封装,为用户提供方便的接口。solr国内下载地址:https://mirrors.cnnic.cn/apache/lucene/solr/,这里介绍windows下solr5.5.5的使用,solr5.x开始,内部集成了jetty,因此不需要额外的tomcat配合启动,这里需要安装jdk1.6+,windows下的jdk安装很简单,这里不再赘述,安装完成配置环境变量JAVA_HOME,CLASSPATH,PATH。

下载解压,solr5.5.5启动solr使用bin目录下的solr命令,solr start,停止实例:solr stop -all

可以通过solr status查看solr运行状态

浏览器中访问http://localhost:8983/solr/,可以看到solr的控制台。

solr控制台中可以看到solr的版本,jre环境等,solr是搜索引擎,让他工作需要先创建索引,然后根据条件查询。

先创建一个solr的核心jcg

core创建成功之后,会在server/solr目录下生成名为jcg的文件夹,这就是我们创建的jcg core的配置,jcg目录下有两个文件夹和一个文件,如下图所示。

然后在solr控制台就可以看到jcg了。

我们根据solr提供的示例,通过设置一个schema,然后导入books.csv(example/exampledocs文件夹下)文件,产生索引,然后重启solr,利用api查询。

books.csv文件的内容:后续我们会根据这些内容进行查询

1、修改server/solr/jcg/conf/manage-schema,添加如下配置

  <!--fields for book.csv load -->  <field name="cat" type="text_general" indexed="true" stored="true"/>      <field name="name" type="text_general" indexed="true" stored="true"/>      <field name="price" type="tdouble" indexed="true" stored="true"/>      <field name="inStock" type="boolean" indexed="true" stored="true"/>      <field name="author" type="text_general" indexed="true" stored="true"/> 
这些配置对应books.csv文件中的一些字段field:name:名称,随便定义,在查询的时候根据定义的名称来查询。type:类型indexed:是否做索引stored:是否存储
这里我们只配置了部分字段cat,name,price,inStock,author,像series_t,sequence_i,genre_s,这些字段没有配置,这些配置在manage-schema中有默认的配置,他们就是根据字段后缀来做索引,这些字段就称为动态属性字段,每一个后缀对应可以有多个这样的动态属性,但是字段类型需要保持和定义时一致。部分动态属性定义如下:

<dynamicField name="*_i"  type="int"    indexed="true"  stored="true"/><dynamicField name="*_is" type="int"    indexed="true"  stored="true"  multiValued="true"/><dynamicField name="*_s"  type="string"  indexed="true"  stored="true" />

2、停止solr实例,并重新开启。

3、进入example/exampledocs文件夹,导入books.csv

导入books.csv文件,使用如下命令

java  -Dtype=text/csv -Durl=http://localhost:8389/solr/jcg/update -jar post.jar books.csv
运行结果如下:

这样创建索引的过程就完成了。

4、查询,这里支持精确查询还支持模糊查询,还支持根据其他字段查询fq:filter query

先看一个通配符查询,按照名称中带有of的查询,查询出四个结果。

根据其他字段查询q=*&fq=price:[0 TO 6],价格在6元以下的书,查出两本,均是5.99元的。

这里介绍了solr基本的使用情况,实际中的用法远远比这复杂。但是基本思路还是这样,创建core,配置schema,导入数据,query。
原创粉丝点击