2013-08-16 34 views

回答

3

有一个string数据类型的字段type。在索引时,将值设置为carcustomer。所以,如果你想购买红色雨燕:

q=red+swifts&fq=type:car 

solr模式是一个巨大的(和稀少占用)表。因此,如果您的Db有一个包含20列和12500个条目的car表,并且包含30列和12500个条目的customer表,则您的solr内核包含25000个包含50个字段的条目。是的,它给予Solr的索引策略效率更高,甚至比关系数据库更快。

+0

完美!谢谢 :) – weakleaf

0

不,你不能。 Solr是一种Nosql,与RDBMS不同。在RDBMS中,表之间存在关系,您可以执行联合操作将它们联合在一起,或从视图中获取数据。但在solr中,根本无法执行联合动作。一个solr查询只能在一个内核上执行。所以你不能简单地从RDBMS复制结构,你必须重新设计solr的模式。

1

如果您维护两个实体都具有的字段并且仍在查询它们,那么solr将允许您将两个实体索引到一起。
但是,如果您想与实体建立关系,Solr确实会提供一个Join功能,但功能虽然有限(因为我上次检查过),但您可以使用关系进行查询。进一步检查加入,你会发现它的新发展。

相关问题