apache solr简单搭建

时间:2022-06-03 17:48:20

首先,下载位置是:http://lucene.apache.org/solr/downloads.html

官网的学习资料:http://lucene.apache.org/solr/quickstart.html

点击download就好,各种版本基本都有三个文件,src的是源码,tgz的是linux下的,zip的是windows下的。

先说下源码的导入吧。

源码实际上是用ant导入的,我用的开发软件是eclipse,配置好ant后,在根目录执行ant eclipse就好了,坐等结束。

然后说一下基本部署,在这里强调一下,我操作的是5.5的版本。

实际上就是解压缩就好了,由于solr是采用jetty框架,因此,启动起来比较方便,到bin目录下执行

执行solr start -p 8983命令。就是在8983端口上执行开启项目。

好,已经可以在浏览器*问了。http://localhost:8983/solr。

然后就是创建数据源,Core Admin选项的add core。

这里说明一下,要创建数据源,是需要3个配置文件的

solrconfig.xml,schema.xml和elevate.xml

这里面的schema.xml需要自己手动编写,网上貌似教程是不少的,下面贴出我配置的xml,没有复杂的东西,是给新手看的。

说下我的数据源名字是test。

<?xml version="1.0" encoding="UTF-8" ?>
<schema name="test" version="1.5"> <field name="_version_" type="long" indexed="true" stored="true"/>
<field name="_root_" type="string" indexed="true" stored="false"/>
<field name="id" type="int" indexed="true" stored="true" required="true" multiValued="false" />
<field name="price" type="int" indexed="true" stored="true"/>
<field name="saleNum" type="int" indexed="true" stored="true" />
<field name="favNum" type="int" indexed="true" stored="true" />
<field name="color" type="string" indexed="true" stored="true"/>
<field name="size" type="int" indexed="true" stored="true"/>
<field name="itemNum" type="int" indexed="true" stored="true"/>
<field name="created_at" type="long" indexed="true" stored="true"/>
<field name="dsr" type="float" indexed="true" stored="true"/>
<field name="tag" type="string" indexed="true" stored="true"/> <uniqueKey>id</uniqueKey> <fieldType name="string" class="solr.StrField" sortMissingLast="true" />
<fieldType name="boolean" class="solr.BoolField" sortMissingLast="true"/>
<fieldType name="int" class="solr.TrieIntField" precisionStep="0" positionIncrementGap="0"/>
<fieldType name="float" class="solr.TrieFloatField" precisionStep="0" positionIncrementGap="0"/>
<fieldType name="long" class="solr.TrieLongField" precisionStep="0" positionIncrementGap="0"/>
<fieldType name="double" class="solr.TrieDoubleField" precisionStep="0" positionIncrementGap="0"/>
<fieldType name="tint" class="solr.TrieIntField" precisionStep="8" positionIncrementGap="0"/>
<fieldType name="tfloat" class="solr.TrieFloatField" precisionStep="8" positionIncrementGap="0"/>
<fieldType name="tlong" class="solr.TrieLongField" precisionStep="8" positionIncrementGap="0"/>
<fieldType name="tdouble" class="solr.TrieDoubleField" precisionStep="8" positionIncrementGap="0"/>
<fieldType name="date" class="solr.TrieDateField" precisionStep="0" positionIncrementGap="0"/>
<fieldType name="tdate" class="solr.TrieDateField" precisionStep="6" positionIncrementGap="0"/>
<fieldtype name="binary" class="solr.BinaryField"/> </schema>

这段配置源自千里码的一道题目,有兴趣的童鞋可以看一下,题目附带数据。传送门奉上http://www.qlcoder.com/task/7647

然后就是数据导入了

这个比较简单,bin目录下执行一个命令:post -c test books.csv。

然后就可以愉快的查询了~