解决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>

转载于:https://my.oschina.net/u/2242064/blog/346215

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值