MySQL记录的更高级搜索
我有一个10000人的人事数据库。我正在开发一个PHP CMS来管理和搜索这些个人 对旧系统的抱怨之一是,你必须根据名字的准确拼写来搜索,否则就不会返回结果 旧系统使用类似MySQL的语句,这些语句太精确了(我不想让我的用户负担如何使用通配符的解释) 我听说过Sphinx和Solr这样的系统,它们令人印象深刻,非常健壮,但理想情况下,我希望避免在服务器上安装额外的软件,并进行大量配置(或者如果我这样做,越简单越好)MySQL记录的更高级搜索,mysql,search,solr,search-engine,sphinx,Mysql,Search,Solr,Search Engine,Sphinx,我有一个10000人的人事数据库。我正在开发一个PHP CMS来管理和搜索这些个人 对旧系统的抱怨之一是,你必须根据名字的准确拼写来搜索,否则就不会返回结果 旧系统使用类似MySQL的语句,这些语句太精确了(我不想让我的用户负担如何使用通配符的解释) 我听说过Sphinx和Solr这样的系统,它们令人印象深刻,非常健壮,但理想情况下,我希望避免在服务器上安装额外的软件,并进行大量配置(或者如果我这样做,越简单越好) 您建议使用哪种系统来提供“更智能”的关键字解释(主要是匹配拼写相近的单词)?您可
您建议使用哪种系统来提供“更智能”的关键字解释(主要是匹配拼写相近的单词)?您可以看看mySQL是否适合您。如果没有,你可能确实需要一个外部搜索引擎,就像你提到的那样
但是首先要确定的是,它们对于输入的关键字不是很灵活,但是它们提供了很多额外的功能,比如布尔搜索
+Miller-Peter
。也许这已经可以帮助你的客户解决问题了 Solr确实是一个不错的选择。它不仅提供了语言词干和大量其他功能,您可以在将来利用这些功能。另外,单独托管允许您单独扩展搜索流量和数据库流量
如果系统管理不是你的事情,你可能会考虑托管服务(如完全公开:我是它的一个共同创建者),它的构建恰好是把SOLR的所有杀手搜索特性交付给那些没有专门知识或倾向配置的开发者,监视器和性能调整Solr本身。
类似于@Mark,我想说的不仅仅是类似。作为dupeThanks为链接投票,有很好的信息