Web应用程序中的全文和标记搜索。我有什么选择?

时间:2016-01-12 05:26:25

标签: c# asp.net full-text-search search-engine

我需要在我的网站上按文字和标签搜索文章。这样做有什么选择?
我可以使用Google Custom Search等服务吗?我需要全文搜索引擎吗?其他方案?有什么优点和缺点? 我需要按相关性排名的结果。此外,如果有查询预测,建议,相关搜索等功能,那就太棒了。

3 个答案:

答案 0 :(得分:0)

如果您的数据库是SQL Server,则可以通过右键单击SQL Server Management Studio中对象资源管理器中的表名并启用full-text index来启用Full-Text Index,如下面的屏幕截图所示。需要启用全文搜索的表格必须为unique index,否则无效。

在您选择的列上创建全文索引后,您可以在查询中使用特殊的全文搜索功能。您可以阅读以下网址查询:MSDN Full-text Search QueriesFull-text Search in SQL Server`

Full-text Index in SQL Server

答案 1 :(得分:0)

您可以使用Lucence.Net。它是开源的,支持排名全文搜索...您只需要将其原始文本提供给其索引器;当您搜索某些内容时,它会显示与您的模式相关的最相关条目。

成本是它将您的数据索引到目录而不是重用SQL数据库。因此,在更新数据库时需要同步/重建其索引。

答案 2 :(得分:0)

经过一些研究(并感谢答案!),这就是我找到的内容

  • MS SQL全文索引
    它让我通过全文和标签进行搜索,但最终由我来实现其余的(建议,突出显示等)。

  • Elasticsearch引擎
    它让我搜索全文和标签,建议,突出显示和一切。但我需要填充索引并使其与主数据库保持同步。

Google Site Search不是一个选项。它不能仅搜索文章,也不能搜索其他内容。它无法按标签搜索。 (虽然,我没有检查)

对于Lucene.Net,Elasticsearch建立在Lucene上,为我处理更多问题。此外,它还有很好的RESTful API。

现在我正在尝试使用Elasticsearch。我想我会将它用于该功能。