Solr学习笔记之3、Solr导入SQLServer数据建立索引

一、下载MSSQLServer的JDBC驱动

下载:Microsoft JDBC Driver 4.0 for SQL Server

地址:http://www.microsoft.com/zh-CN/download/details.aspx?displaylang=en&id=11774

二、配置Solr dataimport for SQLServer

1、依赖jar包配置

将MSSQLServer的JDBC驱动中的sqljdbc4.jar复制到\tomcat\webapps\solr\WEB-INF\lib文件夹中。

将solr-dataimporthandler-4.7.0.jar和solr-dataimporthandler-extras-4.7.0.jar复制到\tomcat\webapps\solr\WEB-INF\lib文件夹中。

2、solrconfig.xml配置

在Solr对应core的配置文件中(如:SolrSingle\collection1\conf),打开solrconfig.xml文件,新增如下节点:

  <!--导入-->
  <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文件。

3、data-config.xml文件配置如下:

一对一模式:

<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
  <dataSource driver="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="jdbc:sqlserver://localhost:1433;DatabaseName=SolrDemoDB;username=sa;password=123456" user="sa" password="123456"  batchSize="100"/>
  <document>
    <entity
      name="Article"
      pk="ArticleId"
      query="select * from Article where IsDelete=0"
      deltaQuery="select ArticleId from Article where CreateDate > '${dataimporter.last_index_time}'"
      deletedPkQuery="select ArticleId from Article where IsDelete=1"
      deltaImportQuery="select * from Article where ArticleId='${dataimporter.delta.ArticleId}'"
      transformer="ClobTransformer,HTMLStripTransformer,DateFormatTransformer" >
      <field column="ArticleId" name="ArticleId" />
      <field column="Title" name="Title" />
      <field column="CreateDate" name="CreateDate" dateTimeFormat="yyyy-MM-dd" />
      <field column="IsDelete" name="IsDelete" />
      <field column="Content" name="Content" />
      <field column="TypeId" name="TypeId" />
      <entity name="ArticleType" query="select * from ArticleType where TypeId=${Article.TypeId}">
        <field column="ArticleTypeName" name="ArticleTypeName" />
      </entity>
    </entity>
  </document>
</dataConfig>
View Code

相关文章: