2012-04-18 96 views
7

我有超过100个CSV文件,其中有10000行,我正在索引。然后查询拼写是类似的拼写。虽然这样做索引是非常缓慢的。Solr索引缓慢

我已经发现了一些好的解决办法

  1. 主从哪里主索引的和从被用于查询。 How to index records in Solr faster (and not impact ColdFusion web server)? Two JVM?

  2. 使用三范围http://www.lucidimagination.com/blog/2009/05/13/exploring-lucene-and-solrs-trierange-capabilities/

我知道这两种解决方案是不同的,我想一些意见应该是更高的优先级?第二种解决方案适合我的问题吗?如果我的拼写检查问题存在更多解决方案。

在此先感谢

+0

你能准确地描述你目前在做什么吗?你如何编制索引以及如何运行查询? – jpountz 2012-04-24 10:15:21

回答

8

索引通常会使查询变慢。如果磁盘速度很快,索引将使用100%的CPU,否则将使用100%的磁盘带宽。无论哪种方式,查询都会很慢。

主/从配置是此标准解决方案。从属服务器专用于搜索查询。他们放慢速度的唯一时间是在复制之后,创建带有新缓存的新Searcher时。

主/从配置可能不会使索引速度更快,但它会避免查询性能下降。一直在做索引多线程的工作,所以你可能想要一次测试多个索引任务。如果瓶颈是磁盘IO,只有当它使用一个CPU的100%时,这将无济于事。

Trie字段非常适合范围查询。我怀疑他们会对索引速度产生太大影响。

最后,您可能想要调整拼写建议选项。拼写建议可能需要很多工作,并且您可以使用不同的,更便宜的选项获得良好的结果。

+0

完美答案!只是为了说清楚,因为问题在谈论两个JVM。你需要2个不同的机器。 – fulmicoton 2012-04-24 11:40:58