索引不同的记录类型在一个solr模式中

问题描述:

我正在努力讨论如何(无论是否可能)人们可以在单个Solr内核中索引多个不同类型的记录。 多个记录表示它们具有不同的唯一键索引不同的记录类型在一个solr模式中

我们倾向于使用单个内核,因为我们希望能够在某些级别同时搜索所有内容,而不必一起拼凑内核。

因此,举例来说,我有产品有以下字段:

product_code <--- unique key 
product_title 
product_description 
etc... 

再就是工作列表有以下字段:

job_id <---- unique key 
job_description 
job_title 
etc... 

有多个其他实体,包括Nutch搜索索引,它将具有唯一的ID“ID”

是否可以在schema.xml中包含多个唯一键?这样id不必将每种不同类型的记录发送到不同的solr核心?

我所关心的主要问题是,在确定<uniqueKey>时,至少需要其中一个,但并非所有发送到solr索引的记录都将具有所需的密钥。

有没有一种可以接受的方式来解决Solr中的这个问题?

+0

当您添加产品相关数据时,作业清单字段中的数据是什么? – JHS

+0

对不起,如果我不清楚。我们会将这些记录与我们自己的管理后端分开提供。所以我们假设当产品数据被馈送时没有工作数据被馈送,反之亦然。 – roy

https://wiki.apache.org/solr/MultipleIndexes#Flattening_Data_Into_a_Single_Indexhttps://wiki.apache.org/solr/UniqueKey

Solr的不需要唯一键。如果您没有指定唯一的密钥,那么您需要执行以下操作 - 当您发布与现有文档具有相同密钥的新文档时,新文档不会替换旧文档,因此您必须删除先手动添加一个新的(当然是提交)。

如果您需要一个唯一的密钥,然后附加一个前缀到基于类型的ID。然后你可以有两个其他字段,如id和类型。因此,例如:

uniquekey: P1 
product_code: 1 
type: product 

uniquekey: J1 
job_id: 1 
type: job