zoukankan      html  css  js  c++  java
  • solr5.3.0导入 oracle 数据

     1,修改solr-data-config。xml文件,内容如下:(PS:本文是以oracle数据库中yqfx 数据库的 siteinfo表来创建索引的,其site表中有id,name,url三个字段,均是varchar型,schema.xml文件我们type就配string 型)

    <dataConfig>
    <dataSource password="scott" user="scott" url="jdbc:oracle:thin:@192.168.0.41:1521:yqfx" driver="oracle.jdbc.driver.OracleDriver"/>
    <document name="Info" pk="id">
    <entity name="zpxx" transformer="ClobTransformer" pk="id"
    query="SELECT * FROM siteinfo"
    deltaImportQuery="SELECT id,url FROM siteinfo where id ='${dih.delta.id}'"
    deltaQuery="select id from siteinfo where createTime > '${dataimporter.last_index_time}'">
    <field name="id" column="id"/>
    <field name="url" column="url"/>
    <filed name="createTime" coiumn="createTime"/>
    </entity>
    </document>
    </dataConfig>

    其中 :

          query是获取全部数据的SQL(solr从sql中获取那些数据),多列 

          deltaImportQuery是获取增量数据时使用的SQL(数据库新增数据追加到solr的数据),多列 

          deltaQuery是获取pk的SQL(数据库新增数据是,追加到solr的数据时的条件,根据id ,条件是最后一次获取的时间,${dataimporter.last_index_time,最后获取的时间}),一列

       2,修改schema.xml文件申明field,field的名字应该和sql的查询结果集列名一致;

          <--zx配置SSH库的field -->
        <field name="id"   type="int "   indexed="true"  stored="true"  multiValued="false" required="true"/>  
      <field name="name"   type="string"   indexed="true"  stored="true"  multiValued="false" />   
      <field name="url"  type="string"     indexed="true"  stored="true"  multiValued="false" />

    3,进入solr管理界面,command选择full-import全部导入;entity需要导入的实体,也就是配置的哪个sql,点击execute执 行导入,

  • 相关阅读:
    轻院:2211: 小明的有趣回文数
    轻院:2209: 小明找整数
    轻院:2206: 小明发福利
    轻院:2207: 小明被提问
    2135: 这里是天堂!
    牛客小白月赛2:文
    轻院2261: flower
    问题 I: 堆
    SharePoint Server 2010安装图解
    Microsoft Windows Sharepoint Services V3.0 安装图示
  • 原文地址:https://www.cnblogs.com/Zhong-Xin/p/5509227.html
Copyright © 2011-2022 走看看