与ASP.NET一起使用哪种搜索技术?

时间:2020-03-06 14:35:55  来源:igfitidea点击:

我们在网站上提供搜索工具的首选方法是什么?目前,我更喜欢在Indexing Service / SQL Server全文搜索上使用Lucene.net(因为无需在服务器端进行设置),但是在那里还使用了哪些其他方法?

解决方案

我们可以使用Google,它不会成为最快的索引器,但是当我们没有预算时,它的确可以提供出色的搜索结果。

dtSearch是我们经常使用的工具,但我并不是那么喜欢它。

如今,很多人都在使用Google的自定义搜索;甚至我知道的几家银行都将其用于Intranet。

我们同时使用了Lucene.net,Indexing Service和SQL Server全文。对于具有大量DB搜索功能的项目,SQL搜索在性能/资源命中方面具有优势。否则,Lucene在所有方面都要好得多。

如果我们需要索引站点的所有页面(而不仅仅是Google索引的页面),或者我们想为Intranet网站创建搜索,那么Google Mini就是不错的选择。这将花费我们一些钱,但是在短短几个小时内启动并运行它确实很容易。但是,根据需要索引的页面数,它可能会很昂贵。

看看Solr。它使用Lucene进行文本索引编制,但是它是功能齐全的http服务器,因此我们可以通过http发布文档并使用url进行搜索。最好的部分是,它使我们可以方便地进行多面搜索,如果我们自己动手,则需要大量的工作。

我正在使用dtSearch,我(喜欢)喜欢它。对于.NET来说,该API并不是世界上最强大的API,但它可以完成工作,而且速度非常快。而且它很便宜,所以老板会喜欢的(〜1,000美元)。

由于没有进行任何语义相关性排名或者任何花哨的内容,因此结果令人有些期待。它比我们可以从MS SQL Server中获得的任何功能都要好。

它具有网络蜘蛛,可轻松在网站上执行快速搜索应用程序。如果需要,可以使用API​​在数据库中创建钩子并提供项目级别的安全性,但是我们必须自己完成这项工作。他们的论坛也有一些不足之处,但也许人们会开始在此处发布dtSearch内容。 :)

有人尝试过Microsoft搜索服务器Express吗?

http://www.microsoft.com/enterprisesearch/serverproducts/searchserverexpress/default.aspx

我还没有尝试过,但是它可能功能强大。

从站点看,它看起来主要是面向共享点用户的,但是鉴于其sdk,我不明白为什么我们不能将其用于常规的旧站点搜索

我也推荐SOLR。设置,维护和配置非常容易。我发现它稳定且易于扩展。有一个用于与solr接口的cpackage。