在.net服务器应用程序中进行简单但必要的搜索选项

时间:2013-02-08 21:00:11

标签: .net search fuzzy-search

我有一个基于.net服务器的应用程序,只需要能够对单个数据库列进行全文“模糊”搜索。底层数据库引擎是SQL Server 2008 r2。

数据列只写一次(从未修改过),预计在“加载”下每分钟最多会添加<10>个新字符串。

字符串的上限为1000个字符。目前仅限于西方语言,但计划在未来添加其他语言。

使用客户端会将搜索词(很可能是空格分隔的关键字)传递给服务器,然后服务器会将匹配记录列表返回给客户端。

唯一的“复杂”部分是需要照顾拼写错误和类似的词语。

感觉好像使用像DoubleMetaphone之类的东西滚动我自己会起作用,但显然需要开发工作。

所以我想知道人们是否认为某些现有的搜索'应用'可能合适?(例如Lucene.net)。 或者如果他们对这么小的搜索要求会有点过分。

1 个答案:

答案 0 :(得分:0)

我会使用SQL Server全文搜索。它功能强大,可调,支持不同语言的语言功能等。

我认为你应该从这开始: http://msdn.microsoft.com/en-us/library/ms142571(v=sql.105).aspx

将其应用于您的应用程序的一般步骤将是:

  1. 从SQL Server安装中安装全文搜索组件。

  2. 在数据库中创建和调整全文索引。

  3. 使用必要的谓词定义搜索查询。

  4. 集成到您的应用程序中!