【IT168 技术文档】
1. 前言
1.1 应用背景
随着我国政府和企业信息化的快速普及和发展,来自于供应链、企业生产系统、办公自动化(或公文行文)系统、人事绩效系统、财务管理系统等无一不在积累着各类数据。不仅如此,来自于企业门户网站、通过各种手持移动设备传递的会议通知、保存在业务员笔记本和PDA中的离线产品报价和短期个人销售信息也不一而足。可以说信息无处不在、无时不在、无设备不在,但是它们是否可以在您的手中,即政府和企业的信息系统是否可以把员工需要的信息呈送到他们的指尖之下,这恐怕是另一回事了。信息化普遍实施后,数据获取方式、获取手段的局限,是国内信息化建设主要面临的尴尬现状。
图1:Your Data,Any Where、Any Time、Any Device. But not on your finger.
1.2 主要检索技术的区别
有了数据但是没有被使用,那么这些数据不应该被称为信息。它们无非是不断充斥设备和网络的比特而已,但是如何把数据提供给必要的人员,检索技术是其中非常有效的途径之一。本文笔者主要基于微软平台,针对SQL Server 2005提供的全文检索技术进行介绍。与关系数据查询、多维数据库查询和基于XML的XQuery、XPath不同,全文检索技术主要处理对象是基于超大数据量的文本数据和结构化的二进制数据上类似LIKE的模糊查询。主要区别见下表。
关系数据库查询 | 多维数据查询 | XML查询 | 全文检索 | |
检索技术 | SQL | MDX | XQuery、XPath | SQL (extension) |
主要处理对象 | 关系二维数据 | 结构化多维数据 | 层次型数据 | 大容量二维和层次型数据的模糊检索 |
主要应用领域 | 一般的OLTP类应用 | 一般的OLAP类分析型应用 | 面向Internet、Intranet的松散耦合SOA应用 | 企业内部知识管理类应用 |
索引 | 大量使用非聚簇索引,一般保存在数据库中。 | 通过层次型、保存中间结果的方式,通过不同的轴向快速定位信息剖面。 | 基于XPath的索引,索引一般保存在数据库中。 | 基于关键字的索引,保存在文件系统中。每个表仅支持一个索引。 |
表1:全文检索与关系数据库查询、多维数据查询、XML查询的对比