14

这无疑类似于(但不重复)全文搜索引擎的比较 - Lucene、Sphinx、Postgresql、MySQL?,但是我正在寻找的是具体的、受支持的、受益于多个可用系统的经验的建议(似乎有很多:“我使用过 lucene,但没有使用 sphinx”,反之亦然反之亦然)。

设置:标准 LAMP(Mysql 5.0,PHP 5)。

MySQL:表使用 InnoDB 引擎进行外键约束

我们正在查看索引数据,而不是页面。要索引的数据可以是多种语言(utf-8 字符集)

我遇到的一些比较(如http://blog.evanweaver.com/articles/2008/03/17/rails-search-benchmarks/)要么不完全适用(ferret 是一个 lucene 端口,但不是与 Zend_Search_Lucene 相同)或者他们正在推动他们自己的系统/实现(并非完全无偏见)。

我遇到的其他一些(例如http://whatstheplot.com/blog/tag/lucene/http://pagetracer.com/2008/02/15/sphinx-and-lucene-search-engines-first -impressions/ ) 为两个系统的性能提供了非常不同的结果。

此外,在我读过的大部分内容中几乎被忽略的是Xapian。这也值得考虑吗?

所以......我希望你们中的一些人对这个问题有一些经验,可以帮助提出一些建议或为我指明正确的方向。

4

2 回答 2

9

Sphinx 的一个优点是您可以在您的客户端和 MySQL 服务器之间“插入”它,并且它只会“干扰”专门针对它的查询,透明地将其他查询从 MySQL 中反弹——参见例如这篇文章。无论这是否是您的用例中的优势,您都可以说!

抱歉,没有使用 Xapian 或 Lucene 的实际经验——尽管如此,阅读有关如何部署它们的信息,听起来(对我来说!)好像只有在您确定了实质性优势时才值得。否则,Sphinx 的“简单易用”部署,作为您的客户端和 MySQL 服务器之间的“代理”,对我来说感觉就像一个巨大的、实质性的胜利!

于 2009-06-03T05:02:14.417 回答
3

我在 Zend_Search_Lucene 和 Sphinx 中寻找了一个听起来相似的项目——搜索数据库内容(在我的例子中,是书籍信息)。我花了大约一天的时间看着每一个。对于它的价值,我发现 Sphinx 非常容易设置和使用。

于 2009-06-17T12:32:08.060 回答