Solr通过配DIH对数据库数据做索引

1 加入相关jar包

将2个相关jar包复制到/opt/solr-7.7.1/server/solr-webapp/webapp/WEB-INF/lib文件夹下

 

jar包名称
solr-dataimporthandler-extras-7.7.1.jar
solr-dataimporthandler-7.7.1.jar

jar包所在位置/opt/solr-7.7.1/dist

 

 并将连接oracle的jar包也复制到该目录下

 


2 配置Core下的solrconfig.xml文件

/opt/solr-7.7.1/server/solr/article_core/conf/solrconfig.xml

加入到<config></config>标签内

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

 


3 在conf中创建data-config.xml

/opt/solr-7.7.1/server/solr/article_core/conf中

<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
    <dataSource type="JdbcDataSource"
        driver="oracle.jdbc.driver.OracleDriver"
        url="jdbc:oracle:thin:@ip地址:1521:ORCL"
        user="连接数据库用户名"
        password="连接数据库密码"/>

    <document>

        <entity name="bookInfo" query="SELECT
            BOOK_ID,
            TITLE_CN,
            TITLE_EN,
            KEYWORDS_CN,
            KEYWORDS_EN
            from
            EL.T_BOOK_INFO">
            <field column="BOOK_ID" name="id"/>
            <field column="TITLE_CN" name="titleCn"/>
            <field column="TITLE_EN" name="titleEN"/>
            <field column="KEYWORDS_CN" name="keywordsCn"/>
            <field column="KEYWORDS_EN" name="keywordsEn"/>

        </entity>

    </document>

</dataConfig>

 

 

4在schema.xml中添加域

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

<field name="titleCn" type="text_ik" indexed="true" stored="true" required="true" multiValued="false" /> 

<field name="titleEn" type="text_ik" indexed="true" stored="true" required="true" multiValued="false" /> 

<field name="keywordsCn" type="text_ik" indexed="true" stored="true" required="true" multiValued="false" /> 

<field name="keywordsEn" type="text_ik" indexed="true" stored="true" required="true" multiValued="false" />

其中field中的name值与data-config.xml中的name值一样

 

5重启solr服务

bin/solr restart

执行添加 10万条数据大概用时1m30s

posted @ 2018-04-02 14:43  wdmiye  阅读(350)  评论(0编辑  收藏  举报