我正在使用solr版本3.0.1,我即将更改为solr 4.6.0。 通常我只使用solr而不定义核心(我认为solr 3.0.1还没有核心)。 现在我想将我的solr升级到版本4.6.0,它有一些新功能。 所以我有3个问题:
提前致谢。
答案 0 :(得分:3)
核心基本上是具有给定模式的索引,并且将包含一组文档。
您应该为不同的文档集合使用不同的核心,但这并不意味着您应该将不同类型的文档存储在不同的索引中。
一些例子:
这实际上取决于你的用例。
答案 1 :(得分:0)
你必须事先考虑一下你要对你的Solr索引执行什么类型的查询。然后,您可以相应地放置核心或多个核心的模式。
例如,如果您在关系数据库上执行一些JOIN查询,那么SOLR索引中的大量文档将不会非常有效(如果可能的话),因为它是NoSQL世界(此处读作:非关系)。在这种情况下,您可能需要将数据从多个数据库表复制到一个核心模式中。
正如弗朗西斯科已经提到的那样,物理核心被表示为一个独立的实体,它有自己的架构,配置和索引数据。
多核设置的一个注意事项:在同一容器实例下配置的所有核心将共享相同的JVM。这意味着您应该小心存储在这些核心上的数据量。 Lucene是Solr内部的索引引擎,它具有非常简洁的快速(de)压缩算法(版本4.x),因此磁盘可以保留更长时间,但是JVM堆是值得关注的。
与Solr管理UI相结合的内核的好处是:
core reload after schema / solrconfig changes
core hot swap (if you have a live core serving queries you can hot swap it with a new core with same data and some modifications)
core index optimization
core renaming