我已经完成索引时间狮身人面像的基准测试& Solr。与Solr相比,Sphinx在索引算法(超快索引时间和小索引大小)方面遥遥领先。
当你说10页的文字,它似乎你甚至不需要实时狮身人面像索引。您可以按照Sphinx中的主要+增量索引方案(您可以在Sphinx文档中找到)。这将是超快和接近实时的。如果您需要更多帮助,请随时询问,很高兴向您解释。
Solr是伟大的,但谈到优化算法狮身人面像岩石!尝试狮身人面像。
在评论中提到您的问题,Solr/Lucene支持增量索引(在他们的术语中称为delta导入),其安静易于配置,但与Sphinx使用的方法相比,它们相当慢。
Main + Delta很快就够了,因为你可以做的就是创建一个临时表存储你的新文本并索引它。根据文档:Sphinx支持“实时”(几乎实时)索引更新,并且可以使用所谓的“主+增量”方案来实现。这个想法是设置两个来源和两个索引,其中一个为数据的“主要”索引,另一个为新文档的“增量”。
举个例子,你有1000万条记录,所以你可以保留它作为主索引,并且所有新文档都被添加到一个新的表中,这个表将作为三角洲。这个新表格可以不时索引(比如说每1小时),并且数据可以在几秒钟内搜索到,因为您有10页文本。现在,在您搜索到新记录后,您可以合并主表+ delta表格的文档,这可以在不干扰搜索的情况下执行。合并文档时,清空新表并在一小时后再次执行整个过程。我希望你有其他问题,请随时提出任何问题。
谢谢你的帮助。从我读的主+三角洲正是我所需要的。但是有一点在文档中不明确;他们说它将把索引时间缩短到30到60秒。就我而言,在几秒钟内(最多一分钟)准备好可以搜索新文本是非常重要的。主+三角洲足够快吗?从我看到的狮身人面像就是这样。 – applechief
非常欢迎。你可以在上面看到我编辑的答案。主+三角洲应该为你工作,因为狮身人面像索引真的很快。但还有一件事:请看上面答案中提到的狮身人面像中的实时索引,我从来没有用过它,但看起来很有希望。将两者都应用于数据后,您可以查看哪些最适合您。 – Yavar