SQL Server 2000 全文检索技术
随着海量信息的出现以及计算机存储技术的发展,文献数据库正由书目数据库向全文数据库转变。这一转变使得全文检索技术得到空前的发展。
常用的实现全文检索的方法主要有以下两种:
第一种方法是不对数据库建立索引而直接对文章进行匹配的方法。这种方法由于没有建立索引库,因此所占空间较少,但同时正是因为它没有索引库,所以在进行全文匹配时要花费大量的时间。
第二种方法则是一种为全文建立倒排索引库的方法。这种方法可以大大节省检索的时间。但同时,这种方法需要占用一定的存储空间来建立索引库。目前,国内外对全文检索的研究可以说是达到一个高潮。许多研究机构和商业组织都在进行这方面的研究。国际最具影响力的全文检索评估机构当属TREC(Text Retrieval Conference)。它是由美国技术和标准研究所(NIST)和美国高级研究计划局(DARPA)共同举办、自1992年以来每年一次的全文检索评估会议,会议参加者带来研究的检索系统以供专家进行评估。传统的信息单位,图书馆等也开始建立全文数据库,引进各种全文检索技术。一些软件公司,也纷纷推出全文检索软件。国内比较有代表性的如TRS等,而国外比较著名的有下文将要介绍的Microsoft公司开发的SQL Server 2000。
2 在SQL Server 2000中配置全文检索服务
SQL Server是Microsoft公司在原来和Sybase公司合作的基础上推出的一款面向高端的数据库系统。而SQL Server 2000版本则是最新的、大型联机事务处理的新型数据库平台。它继承了SQL Server以前版本的一些强大的优势,如简单易用、具有良好的稳定性和高效性等等。同时,它的功能比以前的版本更加强大,界面更加友好。总之,无论是在功能、安全性、可维护性,还是在易操作性上都较以前版本有了长足的进步。它的全文检索功能配置简单,使用十分方便。我在建立关于信息检索的英文论文题名、文摘数据库的过程中,使用了SQLServer 2000。由于文摘文本单词量平均在500个左右,而且论文记录数量较多,如果不为文摘建立全文索引库,将严重影响检索效率。因此,我使用SQL Server2000的全文检索功能为这个数据库提供了全文检索服务。
2.1 建立全文检索服务的过程如下:
第一步,在SQL Server中建立一个全文数据库English—Data。在该数据库中建立一个表Papers。该表的字段有pa—per__id(代表论文的顺序,数据类型为int,长度为4,要求非空,并为标知,标知种子为1,自动增量为1)、paperAitle(代表论文的题目,数据类型为vchar,长度为200,要求非空)、pa—per_abstract(代表论文的文摘,数据类型为vchar,长度为8000,要求非空)。
第二步,为建立全文索引,一定要为该表建立唯一索引(Unique Index)。我为Papers表的paper_id字段建立唯一索引。
第三步,将数据逐步导入到表Papers中。
第四步,打开SQL Server的企业管理器,在左侧的树视中点击数据库。然后点开数据库EnglishData.。选择“全文目录”。点击右键,选择“新建全文目录”,建立全文目录Paper-AbstractFullSearch,然后建立名称为AbstraetSearch的调度。其他接受默认。
第五步,选择企业管理器的右侧的表Papers,单击右键,选中“全文索引表”,单击“在表上建立全文索引”。将会出现“全文索引向导”窗口。点击“下一步”会到达“选择索引”窗口。由于本表只有一个唯一索引paper_id,点击“下一步”,会出现“选择表中的列”窗口。选择“paper_abstract”字段,然后点击“下一步”,出现“选择目录”窗口,接受默认配置,点击“下一步”,出现的窗口“选择或创建填充调度(可选)”窗口,接受默认配置再点击下一步。出现“正在完成SQL Server全文索引向导”,点击“完成”。完成配置。
第六步,选择表Papers,点击右键,选择“全文索引表”,点击“启动完全填充”,等待完成。
第七步,配置数据源名。在ODBC管理器中的“系统DSN”中,单击“添加”,选择“SQL Server”。在数据源名中输入“EnglishData”, 然后进行客户配置。
第八步,如果以后对表Papers进行任何的修改(包括添加、删除记录和对原记录进行编辑),都要重复第六步的操作。这一步是为了保证全文索引库能够与表Papers的修改同步。
以上是建立全文索引的全过程。完成建立后,即可以使用标准的T—SQL语句对其进行全文检索。
2.2 在web平台上进行全文检索
虽然使用T—sQL语句可以很方便地进行全文检索,但笔者考虑到不是所有的用户都掌握了T—sQL语句,因此为方便用户检索,笔者建立了一个基于Web界面的全文检索平台。用户只需将检索词提交给Web服务器,服务器使用ASP调用ADO控件来对SQL Server2000数据库进行查询,并将检索结果以Web页面的方式返回给用户。
ASP(Active Server Pages)是微软公司建立的一套服务器端脚本环境。设计人员可以结合HTML、ASP指令和ActiveX控件建立动态、交互且高效的Web服务器应用程序。由于所有的程序都嵌入HTML中且在服务器端执行,因此不必担心客户端的浏览器能否运行程序。同时,它还具有简单、易开发、兼容性好等优点。ADO(ActiveX Data Object,
Tags:
作者:佚名评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论