我使用Solr5.3.1的DataImportHandler来导入我导入到MySQL中的IMDB数据。
然而,处理一个文档需要几秒钟甚至几分钟的时间。我的表包含10M+行,因此这将花费很长时间。我已经物化了所有数据,MySQL处理所有行只需要几分钟。
是什么原因导致了这种糟糕的性能?
发布于 2015-11-02 16:58:00
@yangrui不幸的是,你的问题没有唯一的答案,为什么索引速度很慢。24G是一个很大的堆,但根据索引的实际大小,它可能足够也可能不够。
在提交过于频繁的情况下,提交策略修改也会有所帮助。当“提交”/“自动提交”发生时,SOLR做了很多使文档可供搜索的魔术。然而,当提交发生时,它是一个需要大量资源的操作。
另一件不明显的事情是服务器上实际可用的未分配RAM。所谓未分配,我指的是服务器上除与JVM关联的RAM作为堆之外的额外RAM。我建议您阅读本文档https://wiki.apache.org/solr/SolrPerformanceProblems#RAM,我怀疑您的机器上可能没有足够的内存。希望这能有所帮助。
https://stackoverflow.com/questions/33435276
复制相似问题