一尘不染

选择独立的全文本搜索服务器:Sphinx还是SOLR?

mysql

我正在寻找具有以下属性的独立全文搜索服务器:

  • 必须作为独立服务器运行,可以处理来自多个客户端的搜索请求
  • 必须能够通过对SQL查询的结果建立索引来进行“批量索引”:说“ SELECT id,text_to_index FROM document;”
  • 必须是免费软件,并且必须在以MySQL作为数据库的Linux上运行
  • 必须快速(排除MySQL的内部全文搜索)

我发现具有这些属性的替代方法是:

  • Solr(基于Lucene)
  • ElasticSearch(也基于Lucene)
  • Sphinx

我的问题:

  • 他们如何比较?
  • 我错过了其他选择吗?
  • 我知道,每个用例是不同的,但是否有某些情况下,我肯定 希望使用某个软件包?

阅读 253

收藏
2020-05-17

共1个答案

一尘不染

我已经成功使用Solr近两年了,并且从未使用过Sphinx,所以我显然有偏见。但是,我将通过引用文档或其他人来尝试保持客观。我还将为我的答案打补丁:-)

相似之处:

  • Solr和Sphinx都可以满足您的所有要求。它们速度很快,旨在高效地索引和搜索大量数据。
  • 两者都有使用它们的高流量站点的一长串(SolrSphinx
  • 两者都提供商业支持。(Solr狮身人面像
  • 两者都提供针对多种平台/语言(SphinxSolr)的客户端API绑定
  • 两者都可以分布以提高速度和容量(SphinxSolr

以下是一些区别:

2020-05-17