在单个查询中查询具有不同模式的Solr多个索引

时间:2016-09-02 05:51:35

标签: solr distributed

我们遇到的情况是我们使用不同的模式保留两个索引。

例如:假设我们有一个卖家索引,其中键值是卖家ID,其他属性是卖家信息。现在另一个索引是书籍,其中书籍ID是唯一键,它保存书籍相关信息。

是否可以在单个查询中查询这两个索引并获得集体结果?

我已经检查了Solr,但根据我的发现,我们可以通过Solr中的分布式搜索来完成这项工作,但它适用于最多3个索引中分布的同类模式。

我是Solr的新手,所以如果这是一个愚蠢的问题,请忽略。

1 个答案:

答案 0 :(得分:0)

您需要考虑对搜索查询有意义的内容,但有一些规则。

第一个要求是唯一键需要具有相同的名称,并且在集合中是唯一的,否则Solr无法整理结果。

如果您希望对结果进行某种合理排名,则需要一些常见字段。例如,我有两个集合:一个是产品数据,另一个是包含产品相关文档。我有一个唯一的密钥: id ,当我想在两个集合中查询时,我有公共标题和内容字段。我还有一个高级搜索界面,我可以查询产品ID等特定字段。

“统一核心”是跨两个或多个核心处理搜索的典型方式,请参阅此Stack Overflow答案,了解如何设置

Query multiple collections with different fields in solr

其他技术是使用类似Carrot的联合搜索或发出两个查询,并在搜索结果的不同标签中显示结果。