您的位置:首页 > 大数据 > 人工智能

Solr dataimport 功能

2018-01-30 00:00 337 查看
(solr-7.1.0 jetty方式)

从MySQL导入数据至solr索引中

1、 managed-schema文件,索引字段设置

<field name="id" type="string" docValues="false" indexed="true" stored="true" required="true"/>
<field name="name" type="string" docValues="false" indexed="true" stored="true"/>
<field name="course_Id" type="plong" docValues="false" indexed="true" stored="true"/>
<field name="author" type="string" docValues="false" indexed="true" stored="true"/>

2、 solrconfig.xml文件设置,导入相关jar包,及配置requestHandler

需要注意的是mysql-connector-java-5.1.26.jar需自行下载

<lib dir="${solr.install.dir:../../../..}/contrib/dataimporthandler-extras/lib" regex=".*\.jar" />
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-dataimporthandler-.*\.jar" />
<lib dir="${solr.install.dir:../../../..}/server/lib" regex="mysql-connector-java-5.1.26.jar"/>

data-config.xml为自定义名称的配置文件,需上传至zookeeper中

<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler>

data-config.xml

field 中的column对应数据库的一个字段,name对应managed-schema中的name

<dataConfig>
<dataSource name="jdbcDataSource" type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://xxxxxx:3306/mooc_subject?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true"
user="xxxxx" password="xxxx"/>
<document>
<entity dataSource="jdbcDataSource" name="mooc_subject" query="select * from mooc_subject" >
<field column="id" name="id"></field>
<field column="name" name="name"></field>
<field column="course_Id" name="course_Id"></field>
<field column="author" name="author"></field>
</entity>
</document>
</dataConfig>

打开solrcloud页面选择dataimport

Command 选择 Full-Import(Full-Import 会先清空在导入,data-import则是根据配置修改指定数据)

Entity 选择 配置文件中预先定义的

然后执行即可,出现下图提示,表示成功。



在Query页查询,显示确实导入了531353条记录

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Solr solr数据导入