献,用户不 得不对各个数据库逐一查找和借助网络搜索引擎进 行搜索,而得到的却是纷繁复杂的检索结果,检索效 率难以达到预期目标,主要原因在于: 1)数据库系统的异构性和分布性; 2)各数据库彼此独立,用户无法同时检索多个 网络数据库,检索结果相对分散; 3)各数据库的检索依托于特定的检索系统,用 户难以理解并掌握众多的检索人口及语法;
———1。。。。。。。。’。。。。。。。。。。。。。。。。。。。。。。______。。。。。。。。。。●。。。。。一
。
4)网络搜索引擎无法访问动态页面,这为以后 台数据库做支持、依靠接收用户请求表单中的信息 而动态生成web页面的检索造成了很大困难; 5)某些数据库具有特定的使用权限要求,用户 需要在不同的系统间重复注册,增加了用户负担. 针对上述问题,近年来,对异构数据库的统一检 索日益得到关注,国内外的相关研究也取得了一定 的进展.利用统一检索系统,用户通过一个单一友好 的界面,一次向多个Web数据库、搜索引擎提交检 索请求,获取更为准确、有序的检索结果,以期在较 高查全率下达到较高的查准率和检索效率[1]. 目前,有不少国内外从事文献技术平台开发商 业机构和图书馆在进行统一检索技术的研发.但国 外开发的统一检索系统侧重对各种协议的广泛支 持,国内开发的统一检索系统侧重于公共网关接口 技术的开发,几乎所有的系统在稳定性上都有一定
的局限.
收稿日期;2007-06—13 基金项目:甘肃省中青年科学基金(YS021一A22.021) 作者简介:王权(1980一),男,甘肃民乐人,工程师.
万 方数据
·92·
兰州理工大学学报
第34卷
1文献数据库的检索步骤
把检索文献数据库的步骤抽象为以下几步: 1)常规操作:主要指数据库首页的浏览、登录 以及提交检索条件; 2)检索字段映射:指填写数据库检索条件的过 程;
2)数据库模板字段映射基本信息,包括检索 项、检索关键词、附加查询字符串、字符编码方式、翻 页参数等. 3)数据库模板检索表达式信息,包括二次检索 时逻辑与或非的表示等. 4)得到元数据引用点等信息,包括检索结果每 页显示条数、命中记录数周围内容、检索结果数据引 用点位置、原始网络数据库起始页码、原始网络数据 库翻页增量、数据引用点表格头信息、详细信息(点 击篇名后)、数据引用点位置等. 5)得到检索结果的过程描述信息,包括数据库 首页的浏览、登录以及提交检索条件、填写数据库检 索条件等过程. 6)得到详细信息(点击篇名后)的过程描述信 息. 7)得到全文的过程描述信息. 2.3统一检索系统的程序实现 2.3.1网络数据库的检索参数分析
3)命中记录数:指取出数据库检索的命中记录
的过程; 4)拆分结果:把每一页总的检索结果拆分成单 条结果; 5)下一页链接:取出数据库检索结果翻页链接 的过程.
2统一检索系统的设计
Z.1
PHP
由于PHP建立在行业标准和Internet标准之 上,集成了一些常用的Internet组件,如cURI。远 程资源获取工具是该系统性能好坏的一个最重要的 技术环节,不论是采用PHP中的SOCKET通讯方 式还是FOPEN方式都不能胜任如此频繁的文件获 取时间要求.而采用性能优异的CURL访问组件, 远程访问速度比传统方式速度快了近200倍,采用 FOPEN方式对于100个H1vrP文件请求每分钟只 能打开10个,而采用CURI,组件方式对于2 000个 HTTP文件请求每分钟可以打开2 000个[21.此外 PHP可以非常方便地处理与H1vFP协议有关的一 些操作.另外,采用面向对象和基于类库的设计可相 当方便地将系统以web应用或Web Service形式 发布.
通过HTTP协议访问已经存在的Web检索系
统,并从中提取出所需要