解决Solr增量导入MySQL数据的问题
步骤一:在solrconfig.xml中插入一个新的requestHandler,增加如下几行
<requestHandler name="/dataimportcommentdelta" class="org.apache.solr.handler.dataimport.DataImportHandler"> <lst name="defaults"> <str name="config">data-config-comment-delta.xml</str> </lst> </requestHandler>
步骤二:编写data-config-comment-delta.xml,写入如下内容,注意query中的条件,dih.last_index_time,表示solr上一次做索引的时间。Solr执行这个配置的full-import实际上就等价于增量导入数据
<dataConfig> <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/mooc" user="root" password="root"/> <document> <entity name="comment" query="SELECT id, DATE_FORMAT(writetime, ‘%Y-%m-%dT%TZ‘) as ‘writetime‘, title from comment WHERE DATE(updatetime) > ‘${dih.last_index_time}‘ OR DATE(writetime) > ‘${dih.last_index_time}"> <field column="id" name="id"/> <field column="writetime" name="writetime"/> <field column="title" name="title"/> </entity> </document> </dataConfig>
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。