SOLR DIH在同一个MySql表上添加多个查询的文档

时间:2014-12-05 14:12:43

标签: mysql search solr lucene dih

我是Solr中的Noob,Iam陷入了我想要完全导入到同一个文档实体的情况,使用Solr DIH基于不同条件在SAME表上使用多个查询。那么它可以实现吗?

我的问题(我想做什么):

比如说,我想像这样定义我的数据导入模式,使用来自TABLE A的数据的Index实体,基于不同条件的Multiple Times,是否可能采用以下格式?

   <entity name="ITEM" query="select * from TABLE A where condition 1  And Some different sets of rules">
       <field column="ID" name="id" />
       <field column="NAME" name="name" />
       <field column="MANU" name="manu" />
       <field column="WEIGHT" name="weight" />
       <field column="PRICE" name="price" />
       <field column="POPULARITY" name="popularity" />
       <field column="INSTOCK" name="inStock" />
       <field column="INCLUDES" name="includes" />
   </entity>

   <entity name="ITEM" query="select * from TABLE A where condition 2  And Some different sets of rules">
       <field column="ID" name="id" />
       <field column="NAME" name="name" />
       <field column="MANU" name="manu" />
       <field column="WEIGHT" name="weight" />
       <field column="PRICE" name="price" />
       <field column="POPULARITY" name="popularity" />
       <field column="INSTOCK" name="inStock" />
       <field column="INCLUDES" name="includes" />
   </entity>

更多问题:如何在SOLR数据导入配置文件中设置MYSql自定义variables

例如,

SET @USerID = 0;

谢谢。

1 个答案:

答案 0 :(得分:1)

定义具有导入相同集合的不同查询的多个实体应该在您编写时起作用。你可能想要不同的name =“” - s,但是(如果你不得不问“这有用吗?”,试试吧)。如果两个不同的实体不能用于你想做的事情,你可以使用UNION来解决第一种情况。