2011-07-05 62 views

回答

4

是的,你可以做到这一点。只需创建一个Solr模式,该模式包含两个表所需的所有字段,并添加另一个包含表名的字段。在编制索引期间,将表名称属性添加到要编入索引的字段中。在搜索过程中还总是包含表名字段的查询参数。

作为替代方案,您可以设置多个Solr实例。但是,如果我们在这里谈论大量数据(如数百万行表),那么您应该只做这个。

+2

”您在一个字段或一个索引中拥有的不同种类的数据(不同种类的数据),其实用程度越低“ - http://wiki.apache.org/solr/SchemaDesign –

+0

您能否请我提供一个例子 ? –

+0

嗨,评论并不是真正适合的地方。请问一个新问题。 – nfechner

18

如果应用程序的某些部分需要搜索联系人,而另一部分需要在清单中搜索,请创建两个单独的索引。将大量不同的数据存储在同一个索引中几乎不是一个好主意,它会使事情不必要地复杂化。作为Solr wiki wisely says

越异质的(不同 种类的数据)必须在一个场 或者在一个索引,则不太有用它 是。

您不需要有多个Solr实例来容纳多个索引,您可以使用multi-core轻松管理这个实例。

+1

但是你不能跨核心进行搜索(尽可能少的我可以看到) – soandos

7

我发现这个问题的一个非常有用的答案here,包括关于使用“多个索引”与“一个索引中的多个文档类型”的一些指导。这篇文章还链接到我发现非常有用的github上的示例代码。 “

+0

感谢您的提示,更好地跟随solr文档。 –

+5

vulcan发布的链接此后发生了变化。这是新的:http://lucidworks.com/blog/solr-powered-isfdb-part-4/ – daekano