我有一个Web服务,它将结果返回给jquery自动完成。
对于查询,我必须使用四个完整的类似条款
LIKE('%SOME_TERM%')
原因是用户需要能够从子字符串以及正确的单词返回结果。在这种情况下,我也尝试使用自然和布尔模式的多种选项的全文索引,但它们不能正常工作,在这种情况下,它们的结果还有很多不足之处。
数据库使用索引进行了高度优化,甚至使用LIKE子句从具有多个连接的查询返回结果,并且其中一个具有200,000行的表在首次运行时需要~0.2 / 0.3秒。一旦它被服务器缓存,那么显然所花费的时间是微不足道的。
我想知道在这里还有什么值得尝试的东西。我曾经看过一些独立的搜索服务提供商,但我在这个项目上的时间有点紧张(差不多已经完成并准备发布)所以无法承担任何大型设置或大规模的重构时间和资金支持。
它可能会得到它的好处,但让SO有发言权并没有害处是我的态度。
答案 0 :(得分:0)
我认为apache solr是他们的选择。用于全文搜索。 http://lucene.apache.org/solr/
但就像你说的那样,如果你没有多少时间,你确定你的查询表现最佳。我看不到你能做多少。