简体   繁体   English

Solr中的多个索引

[英]Multiple indexes in Solr

I want to index two tables from MySQL using Apache Solr. 我想使用Apache Solr从MySQL索引两个表。 Please see my data-config and schema files below. 请在下面查看我的数据配置和架构文件。

<dataConfig> 
 <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/test" user="root" password="root" batchSize="1" />  
 <document name="tb_location">   
  <entity name="tb_location" query="SELECT * FROM tb_location">    
   <field column="loc_code" name="id"/>    
   <field column="loc_code" name="loc_code"/>    
   <field column="loc_name" name="loc_name"/> 
   <field column="loc_name" name="loc_name_ci"/> 
   <field column="ADM1_FULL_NAME" name="state"/>         
  </entity>  
 </document>
 <document name="person">   
  <entity name="person" query="SELECT * FROM person">    
   <field column="id" name="personid"/>    
   <field column="fname" name="fname"/>    
   <field column="lname" name="lname"/> 
   <field column="town" name="town"/>       
  </entity>  
 </document>
</dataConfig>

Schema.xml Schema.xml

 <field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" /> -
    <field name="loc_code" type="string" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="loc_name" type="string" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="loc_name_ci" type="string_ci" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="state" type="string" indexed="true" stored="true" required="true" multiValued="false" />

    <field name="personid" type="string" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="fname" type="string" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="lname" type="string" indexed="true" stored="true" required="true" multiValued="false" />
    <field name="town" type="string" indexed="true" stored="true" required="true" multiValued="false" />

Also i created unique id for each tables (id and personid). 我也为每个表(id和personid)创建了唯一的ID。 But when i execute the dataimport module, nothing is fetched or indexed. 但是当我执行数据导入模块时,没有任何内容被获取或建立索引。 Can someone help me to figure out where exactly the problem ? 有人可以帮我弄清楚问题出在哪里吗?

Please check the below link for Multiple indexes... 请检查以下链接以获取多个索引...

Multiple indexes 多个索引

Fixed it !!! 修复 !!! data-config.xml should be as follows. data-config.xml应如下所示。

<dataConfig> 
 <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/test" user="root" password="root" batchSize="1" />  
 <document name="tb_location">   
  <entity name="tb_location" query="SELECT * FROM tb_location">    
   <field column="loc_code" name="id"/>    
   <field column="loc_code" name="loc_code"/>    
   <field column="loc_name" name="loc_name"/> 
   <field column="loc_name" name="loc_name_ci"/> 
   <field column="ADM1_FULL_NAME" name="state"/>     
  </entity> 
  <entity name="person" query="SELECT * FROM person">    
   <field column="id" name="personid"/>    
   <field column="fname" name="fname"/>    
   <field column="lname" name="lname"/> 
   <field column="town" name="town"/>   
  </entity>  
 </document>
</dataConfig>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM