【IT168 技术文档】
2.2 SQL Server 2005全文检索的技术架构
SQL Server 2005的全文检索其实是由三个进程共同完成的,它们的总体逻辑架构如下:
图2:SQL Server 2005的总体逻辑架构
其中,三个进程分别为:
(1)SQL Server process (Sqlservr.exe)
(2)Microsoft Full-Text Engine for SQL Server process (Msftesql.exe)
(3)Microsoft Full-Text Engine Filter Daemon process (Msftefd.exe)
Msftefd主要是负责监控Msftesql进程,同时从具体的数据源根据通过使用对应的过滤器,把其中的文本信息根据断字符拆分成词汇列表(Wordlist)反馈给Msftesql进程。整个全文检索的简要执行过程如下:
(1)从客户端发送的全文查询会转到 SQL Server 进程中的 SQL Server 查询处理器 。
(2)查询处理器再将它传递给全文查询组件,该组件将创建 OLE DB 命令树,并将它发送到 Microsoft Full-Text Engine for SQL Server (MSFTESQL) 服务。
(3)在 MSFTESQL 进程中,全文引擎查询处理器将使用同义词库和干扰词文件以及断字符和词干分析器来处理查询。
(4)处理此查询之后,MSFTESQL 服务将结果集返回到 SQL Server 进程。此结果集可以用于进一步进行处理,也可以返回到客户端。