Solr Join - 从不同索引获取数据

时间:2012-10-25 02:16:02

标签: join solr lucene

我正在开展一个项目,我们有200万个产品,有50个客户有不同的定价方案。索引2M X 50记录目前不是一个选项。我看过solr join并且无法按照我想要的方式工作。我知道这就像是一个自我加入,所以我有点怀疑它会起作用,但无论如何它都在这里。

这是样本架构

core0 - 产品 core1 - 客户端

因此,鉴于客户ID,我想显示Samsonite制造的所有行李,按最低价格排序。

如果有更好的方法来解决这个问题,我愿意重新设计令人兴奋的架构。

提前谢谢。

1 个答案:

答案 0 :(得分:1)

Solr不是关系数据库。您应该查看sharding功能并拆分索引。此外,您可以编写自定义插件,根据客户的ID /名称/索引时的任何内容详细说明价格数据( BAD 您仍会获得为每个客户复制的产品)。

我们如何做(所以你可以得到一个例子):

  • 客户端由sqlite
  • 处理
  • 产品以“基本”价格存储在solr中
  • 每个客户端在询问数据库时都会通过自定义查询处理程序应用“定价规则”(它只是一个值修饰符)