我有一个Solr索引来存储和搜索文章。每篇文章都有一个多余的字段来存储标签。 在我们的系统中,标签可以分组,我们称之为Topic.So,还有另一个索引来存储主题,每个主题都有标签。 现在要求是搜索特定主题的文章。我知道我们可以将Topic存储为同一索引中的多元化字段,但如果通过添加或删除标记在主题中有任何更改,我们必须重新索引整篇文章。 我想知道是否有更好的解决方案吗?
答案 0 :(得分:0)
SOLR实际上是一个noSQL数据存储,如MongoDB,Cassandra,等 ..所以你必须接受noSQL思维模式并放弃RDBMS心态......
因此,我会将它们作为额外的多值字段包含在内,如您所建议的那样,并在它们发生变化时重新编制索引。这是一个很小的代价,除非你的索引真的很大,我怀疑重新索引需要很长时间。
无论如何,您必须重新索引二级索引,因此重新索引主索引的工作量不会太大。这样你就可以完全抛弃二级索引(你应该)。