【发布时间】:2010-11-20 00:33:51
【问题描述】:
我正在寻找具有以下属性的独立全文搜索服务器:
- 必须作为独立服务器运行,可以为来自多个客户端的搜索请求提供服务
- 必须能够通过索引 SQL 查询的结果来执行“批量索引”:例如“SELECT id, text_to_index FROM documents;”
- 必须是免费软件,并且必须在以 MySQL 作为数据库的 Linux 上运行
- 必须快速(排除 MySQL 的内部全文搜索)
我发现具有这些属性的替代方法是:
- Solr(基于 Lucene)
- ElasticSearch(同样基于 Lucene)
- 狮身人面像
我的问题:
- 他们如何比较?
- 我是否错过了其他选择?
- 我知道每个用例都不同,但在某些情况下我肯定不想使用某个包?
【问题讨论】:
-
你排除了直接使用 Lucene 吗? Solr 是 lucene 之上的服务,所以直接的 Lucene 是可能的。
-
Lucene 有独立服务器模式吗?我认为这是 SOLR 添加的内容之一?我没有排除任何事情——所以如果考虑到要求,那是最好的选择,请随意提倡 Lucene :-)
-
mausch:主要是 Java,但也有其他语言。
-
我个人喜欢狮身人面像。然而,在最近的一个“大型”项目中,最新的候选版本 (0.9.9-rc2) 在使用多值数组 (MVA) 时出现了阻止错误。这将是随机的结果!所以我们转向 SOLR 来解决这个问题。一旦 SOLR 启动并运行,性能就很好,并且没有显示停止错误。
-
你看过 elasticsearch.com 吗?
标签: mysql full-text-search lucene solr sphinx