0

我们目前有生产中的 SQL Server 2005,我们使用它的全文搜索来搜索一百万个产品数据库的电子商务网站。我已经尽可能地优化了它(我认为),我们仍然看到 5 秒的搜索时间。

(我们不需要网站潦草或 PDF(等)文档索引功能......只需“谷歌”速度进行网站搜索。)

我打算购买 dtSearch 但现在我意识到我可以使用 Lucene.net 并节省 2,500 美元购买两个服务器许可证。

我在一篇文章中读到 Lucene.Net 不适合网站搜索。

有其他人使用过 ASP.Net 的 Lucene.Net 吗?是不是需要很多内存?

任何问题?

任何意见?

4

2 回答 2

1

我们已经使用 Lucene 多年了,它对我们来说非常有效。我们确实有超过 1M 条目的数据库,并且 Lucene 查询会在几毫秒内返回。

对我们来说,我们有一个小缺点,就是可以随时向数据库中添加新条目,并且在索引和查询之间切换可能会比较慢(因此更新索引后的第一次搜索可能需要 400 毫秒,而不是通常的 5 毫秒) . 但是对于一个可以批量更新的产品网站,你应该是黄金。

Lucene 的另一个缺点是索引文件一次只能由一个进程访问。如果您有多个 Web 服务器,这意味着您需要在单独的进程中运行 Lucene。对我们来说,我们的数据库集群上只运行了一项服务(因此如果其中一个失败,它会进行故障转移),我们的 Web 服务器通过一个简单的套接字接口连接到该服务以执行查询。

于 2010-03-11T22:15:50.520 回答
1

另一个选项是Solr,它基于 Lucene,因此速度也很快,但更易于设置和使用,但它作为单独的 Java 进程运行。

于 2010-03-12T01:29:56.610 回答