Solr DIH使用说明

DIH(Data Import Handler)是Solr附带的用来从关系型数据库、XML、email等目标导入数据的工具,本文仅说明Solr5.3.1中使用DIH从关系型数据库中导入数据的方式。

一、      配置Solr

1.  安装JDK1.7以上版本,此处略。

2.  安装应用服务器,如tomcat7以上版本,此处略。

3.  部署Solr Web应用:

a)   解压官方下载包solr-5.3.1.zip

b)   将solr-5.3.1\server\solr-webapp\webapp下所有内容拷贝到服务器WEB应用目录

c)   将solr-5.3.1\server\lib\ext目录下的Jar包全复制到WEB-INF\lib

d)   将solr-5.3.1\server\resources\log4j.properties复制到WEB-INF\lib

e)   创建一个用于存放Solr数据的目录(任意可访问位置),例如/srv/www/app/solr_home;

f)   将solr-5.3.1\server\solr\中的内容复制到上一步创建的目录

修改WEB-INF/web.xml
取消env-entry标签的注释,并修改子标签env-entry-value的值
本例中中改成/srv/www/app/solr_home
注意:该处不能填错,填错后不能正常启动
<env-entry>

    <env-entry-name>solr/home</env-entry-name>

    <env-entry-value>/srv/www/app/solr_home</env-entry-value>

    <env-entry-type>java.lang.String</env-entry-type>

</env-entry>

g)   在/srv/www/app/solr_home创建一个目录,例如core,并将solr-5.3.1\server\solr\configsets\basic_configs下的conf文件夹放入core中

h)   启动服务器,并在浏览器中访问,出现solr管理界面

i)  


创建Core,步骤如下:


j)   Solr在Tomcat部署完成

二、      配置schema.xml

Solr索引的内容是以Document为单位的,由于我们使用Solr索引数据库中表的数据,一个Document相当于一条记录,而这条记录所拥有的字段由schema.xml配置。

Schema.xml的配置比较简单,在模版的基础上修改即可。本文前面配置的Solr的Schema.xml文件位于solr_home/core/conf中。

我们使用Field标签来定义Document的字段。模版中的Field一条Field配置如下:

<field name="id"type="string" indexed="true" stored="true"required="true" multiValued="false" />

属性解释分别如下:

Type:字段类型,引用的类型必须在Schema.xml中配置,模版中已经配置了常用的type。直接使用即可

Indexed:该字段是否索引

Stored:该字段是否在solr中存储

Required:该字段是否必须,即是否能为空

multivalued:该字段是否能为多值(关联表一对多)。

模版中配置了很多dynamicField,该字段的的名称支持模糊匹配。由于我们从数据库中导入数据,不需要该类标签。

三、      配置DIH

a.  将solr-5.3.1\dist\solr-dataimporthandler-5.3.1.jar和数据库驱动拷贝到WEB-INF/lib中

b.  将solr-5.3.1\example\example-DIH\solr\db\conf\db-data-config.xml拷贝到solr_home/core/conf中

c.  在solrconfig.xml中注册声明DIH,如下:
<requestHandler name="/dataimport"
class="org.apache.solr.handler.dataimport.DataImportHandler">

c.  <lst name="defa

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值