Solr - 如何索引多个实体?

aru*_*run 8 solr

我有两个表联系人和库存.这两个表没有关系.我想索引这两个表并使用Solr进行搜索.

这可能吗?

Mau*_*fer 19

如果您的应用程序的某些部分需要搜索联系人,而另一部分需要在清单中搜索,请创建两个单独的索引.在同一索引中存储截然不同的数据几乎不是一个好主意,它会使事情变得不必要地复杂化.正如Solr维基明智地说:

您在一个字段或一个索引中拥有的异构(不同类型的数据)越多,它就越不实用.

您不需要有多个Solr实例来容纳多个索引,您可以使用多核轻松管理它.


小智 7

我在这里找到了一个非常有用的答案,包括使用"多索引"与"一个索引中的多个文档类型"的一些指导.该帖子还链接到我发现非常有用的github上的示例代码.

  • vulcan发布的链接后来发生了变化.这是新的:http://lucidworks.com/blog/solr-powered-isfdb-part-4/ (5认同)

nfe*_*ner 4

是的,你可以这么做。只需创建一个 Solr 模式,其中包含两个表所需的所有字段,然后添加另一个包含表名称的字段。在建立索引期间,将表名属性添加到要建立索引的字段。在搜索过程中,还始终包含表名称字段的查询参数。

作为替代方案,您可以设置 Solr 的多个实例。但只有当我们在这里讨论大量数据(例如数百万个表行)时,才应该这样做。

  • “一个字段或一个索引中的异构(不同类型的数据)越多,它的用处就越小”--http://wiki.apache.org/solr/SchemaDesign (2认同)