技术开发 频道

SQL Server 2005全文检索技术


【IT168 技术文档】

    4.3 多个全文检索结果的合并

    在完成了上述准备工作后,就可以在应用上设计实际的合并过程了。步骤如下:

    1. 在某一城市的客户端发起了一个全文检索的业务查询请求。

    2. 查询引擎根据“业务查询登记表”的内容了解如果完成这个请求,需要执行哪个几个具体查询。

    3. 查询引擎带着具体查询列表,通过查询“查询的配置表”了解哪些查询是本地的、哪些查询是远程的,并且获得了模式化的查询命令。

    4. 对于数据源位于本地的查询,直接在模式化查询命令上增加 USE <DB> GO子句,并且把<prefix>用空串替换,这样就获得了本地的查询命令。

    5. 对于数据源位于远程的查询,还需要通过查询“链接服务器登记表”,了解这个查询需要通过哪个逻辑名称的链接服务器间接查询,并且替换模式化查询命令的USE <DB> GO和<prefix>部分。

    6. 当所有的查询命令(本地 / 远程)都准备好了之后,查询引擎并发的把请求提交,并获得了一组非统一化的数据查询结果。

    7. 查询引擎根据“业务查询登记表”表中每个查询结果的统一化转换配置,把每个查询结果统一化成为标准的统一Schema。

    8. 最后,查询引擎把统一化的查询结果合并。

    4.4 合并结果的多样化展示

    虽然数据是统一化Schema的,并且内容也是合并的,但是用户UI地展示却应该是多种多样的。对于胖客户端应用,完全可以通过开发不同的User Control,绑定查询结果即可;对于浏览器客户端,更为简单,只需要配置好一个合并结果的XML -> HTML的XSLT就可以自动的把结果绑定并展示为用户需要的形式。

0
相关文章