我使用InnoDB作为MySQL表,显然使用LIKE和RLIKE / REGEXP的查询可能需要很长时间。
我已经尝试了Spinx,它运行得很好,除了我必须每隔一段时间重新索引上下文。我可以重新索引每一分钟,但我想知道是否有1)Sphinx中的设置以保持记录总是被索引或2)除Sphinx之外的其他软件将保持记录总是被索引。
我希望它在插入或更新记录后立即更新,索引会更新。
答案 0 :(得分:3)
其中一个Apache Lucene项目可能会做得最好。
它们旨在为文本内容构建反向索引,包括执行某些自然语言处理的可选功能。 Lucene是基础项目,最初用Java编写,但现在也移植到.Net - 这使用了一个非常有效的基于文件的存储来存储数据。
对于更大的索引,Solr项目基本上是Lucene的基于服务的版本,您可以通过rest-ful服务访问。这也有缩放选项,例如通过分割多台机器的索引。
答案 1 :(得分:0)