网络信息服务系统Computer-NIS的设计与实现,本文主要内容关键词为:信息服务论文,系统论文,网络论文,NIS论文,Computer论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。
1 引言
我们经常使用的搜索引擎采用的是典型的集中方式,它们试图遍历整个Web,对所有的文档生成全文索引,供用户检索。 随着信息种类和信息量的急剧增长,集中方式已经不能够满足网络信息服务的需要。主要表现在:(1)资源(包括网络带宽, 搜索引擎自身昂贵的硬件设施等)消耗太大;(2)覆盖度有限。据预测, 任何一个搜索引擎索引的Web页面都不到页面总数的三分之一[1];(3)维护困难。 搜索引擎索引数据库的更新频率有限,往往会产生索引失效[2]。因此, 我们认为网络信息服务应该采取分布协作的策略,即为各个学科或者工业领域建立相应的专用信息服务系统。这样,各个网络信息服务系统所要管理的信息资源相对缩小,可以降低消耗,便于维护;同时,这些信息服务系统分布在Internet上,彼此之间通过协作来相互补充,扩大了覆盖度。可见,分布协作方式可以有效地克服集中方式的不足,提高服务质量。
我们设计并实现了一个网络信息服务系统原型Computer-NIS。本文给出了Computer-NIS的设计目标,介绍了Computer-NIS的体系结构,并重点讨论了系统所采用的几项关键技术,包括数据模型、Web 信息检索、基于Z39.50的书目检索以及Z39.50-Web网关等。
2 网络信息服务系统的设计目标
Computer-NIS的服务对象是计算机学科领域的研究、情报人员,目的是为他们提供一些掌握本专业全面、最新信息的有效措施,以促进教学、教研工作的开展。
Computer-NIS首先应该解决信息资源的发现问题。现在,人们已经进入信息极大丰富的时代。一方面,信息来源广泛,包括图书文献、数字化资料、Web文档等;另一方面,信息量巨大。以Web文档为例,目前已经发展成为拥有3亿页面的分布式信息空间, 而且这个数字仍以每4至6个月翻一倍的速度增加[3]。面对信息的海洋,人们觉得力不从心,往往花费了很多时间却所获甚少。网络信息服务系统应该提供书目检索和Web文档检索服务,以帮助用户快速、 有效地发现所需要的信息资源,并能够联机阅读。此外,系统还应该提供订阅手段,根据用户的信息需求,在出现满足用户要求的新信息时主动通知用户。
Computer-NIS还应该解决信息资源的共享和交流问题。人们的信息活动不再是一种单纯的个体行为,相互之间需要进行协作。相同专业的人员之间的讨论和交流已经成为人们获取信息的一个重要途径。网络信息服务系统应该提供一个理想的环境,便于用户进行信息的交流与讨论。
3 网络信息服务系统的结构
Computer-NIS由文档数据库系统、Web服务器、转换器、Web信息搜集与分类、Z39.50-Web网关等五个部分组成,如图1所示。其中, 文档数据库系统负责管理文档信息资源,用于存放Web文档、电子教材、 网络论坛、审阅文档等内容。为了提高易用性,我们采用Web 服务器来向用户提供信息服务。转换器作为Web服务器和文档数据库系统的中介, 可以将文档数据库的内容转换成HTML格式,也可以把用户输入转换成对文档数据库系统的操作。Web 信息采集与分类模块下载符合用户信息需求的Web文档,分类后保存在文档资料库中。Z39.50网关提供基于Z39.50的书目信息检索服务。在客户端,用户使用浏览器可以检索、阅读和订阅Web文档、电子教材,利用网络论坛、审阅文档开展交流和讨论, 以及进行书目检索等工作。系统的管理和维护工作由系统管理员在专用客户端进行。
网络服务信息系统的开发是一个涉及多领域、多技术的复杂工作。其中,数据模型是系统的核心。Web 文档和书目数据是系统的两个重要信息来源,而用户接口的好坏直接决定了系统的使用效率。下面,我们对系统中的关键部分分别加以讨论,给出相应解决方案。
3.1 数据模型
数据库是网络信息服务系统的中心。就管理信息资源而言,数据库优于平面式文件系统。信息资源的多样性和复杂性决定了不同信息资源的数据模型是异构的。例如,图书馆有时使用关系数据库来存储MARC格式的书目数据;Web文档通常表现为半结构化或非结构化; 而电子化文档一般保存在文件系统中。为了将上述异构的信息资源集成在一起,我们设计了一种半结构化模型作为数据库的逻辑模型。
在这种模型中,数据库(Database)的基本元素是文档(Document)。文档的地位类似于关系数据库中的记录,但远比记录复杂,它里面除了包含字段(Field)以外,还包含链接(Link)。 满足某种条件的文档集合构成了数据库的视图(View)。可以为一个数据库定义多个视图,使得不同用户可以从不同的角度来观察数据库。文档中的字段又可以分为数值、时间、日期、文本、RTF 文本或者嵌入式对象等特定类型。文档中链接的起点可以是任何字段,终点可以是数据库、视图、文档或文档中的字段。综合上述,可对该模型作以下形式化描述:
<Database>∷=<View>+
<View>∷=<Document>+
<Document〉∷=(<Field>+,<Link>+)
<Field>∷=Digit│Time│Date│Text│RTF│Object
<Link>∷=(<Link-Source>,<Link-Destination>)
<Link-Source>∷=<Field>
<Link-Destination>∷=<Field>│<Document>│<View >
<Database>
图1 网络信息服务系统原型
3.2 Web信息检索
目前,Web已经成为人们获取信息的重要来源,但Web信息检索的现状远不能令人满意。一方面,由于Web的开放性, 每个人都可以任意地发布信息,这使得Web上信息的质量得不到保证。另一方面,Web搜索引擎的算法相对简单,检索精度有限,这使得检索到的Web 文档的相关性得不到保证。为此,我们设计了一个Web信息检索模型, 包括训练器、Robot、分类和导入模块四个部分组成,如图2所示。该模型能够分析用户的信息需求,然后自动搜集满足目标特征的Web文档。 这些文档经分类后导入文档库供用户查阅。
在该模型中,我们采用了近年来应用较多且效果较好的向量空间模型(Vector Space Model,VSM)[4]作为用户信息需求和文档特征的表示方法。该模型的工作分为训练和分类两个阶段。在训练阶段,用户首先建立语料库,即给出一批代表其信息需求的示例文档(每个文档被标上一个类别标识)。词典库中存有供分词和词频统计使用的主词典、同义词词典和蕴含词词典。训练器利用词典对训练文档进行词条切分和词频统计,并根据词频分布抽取出代表用户信息需求的各类文档的特征项集合和相应的权值,生成特征矢量表。在分类阶段,Robot 模型从某个或某些URL出发,采用有向图遍历算法在Web上漫游,采集Web 文档供分类器分类。分类器对已下载的Web文档进行分析, 提取每个文档的特征矢量,并与训练器生成的特征矢量进行相似度匹配和分类。导入模块对符合相似度阈值条件的已分类文档进一步处理,生成索引并存入文档库。经实用表明,该模型通过分类分析提高了Web信息检索精度, 较好地保证了检索到的Web文档与用户需求的相关性。
图2 Web信息检索模型
3.3 基于Z39.50的书目信息检索
图书文献是人们获取信息的另一个重要来源。书目是关于图书文献的元数据,包括作者、题名和日期等。各个图书馆的书目数据库由专业编目人员编制,因而具有较高的质量,反映了图书馆的馆藏情况。通常,用户首先搜索书目数据库找到满足自己需求的书目,然后再借阅实际的书刊。因此,联机书目检索是网络信息服务系统的重要组成部分。
图书馆的联机书目检索服务传统上是通过Telnet方式提供的。近年来,许多图书馆采用Web加CGI的方式提供图形化检索界面。这些服务方式存在着严重的弊端,即各个图书馆的检索界面不一致,用户要检索每个图书馆就必须熟悉相应的界面。为此,ISO制定了Z39.50协议, 作为检索远程图书馆书目的标准[6]。目前, 该标准已经被国外许多图书馆所采纳,但国内尚未有一家图书馆提供基于Z39.50 的书目检索服务, Z39.50客户端检索软件的开发也未见报道。 下面, 我们给出一个基于Z39.50的联机书目检索模型。如图3所示。
图3 基于Z39.50的书目信息检索模型
在该模型中,图书馆的书目存放在数据库服务器的一个或几个书目数据库中。
Z39.
50 服务器在约定端口上侦听用户的连接请求(InitRequest)。在成功地建立连接后, Z39.50 客户发出查询请求(SearchRequest)。Z39.50服务器将接收到的“抽象的”Z39.50 标准查询转换为“具体的”SQL查询,提交给后台数据库服务器执行, 生成查询结果集。然后,Z39.50服务器将查询的执行情况以及部分结果返回。Z39.50客户可以多次发出提取请求(PresentRequest)来获得结果集中的所有书目数据。由于Z39.50相当复杂、庞大,目前各个Z39.50服务器仅实现了它的部分子集。为了增加通用性,我们限定了Z39.50客户端仅提出InitRequest、SearchRequest、PresentRequest这三类请求,且查询请求采用所有服务器均支持的逆波兰(RPN)格式。此外,Z39.50 客户端还要考虑多MARC类型和多语言处理,以支持中文书目的查询。
3.4 Z39.50-Web网点
Z39.50协议较好地克服了书目检索接口的异构性问题,越来越多的图书馆开始提供基于Z39.50的书目检索服务。在使用这些服务时,用户需要有支持Z39.50协议的客户端检索工具。考虑到目前这类工具比较少见,而且用户常用的是Web浏览器, 因此我们在网络信息服务系统中设计了一个Z39.50-Web网关,以支持用户通过Web浏览器对多个Z39.50 服务器进行访问。其结构如图4所示。
图4 Z39.50-Web网关
Z39.50-Web网关作为CGI程序运行在Web服务器端,能够对用户通过HTML表单提交的检索请求(包括查询哪些图书馆以及何种计算机书目)进行预处理,转化为Z39.50支持的格式;然后创建若干个并发的Z39.50客户进程(线程),将用户检索请求同时递交给多个Z39.50服务器;在Z39.50服务器返回检索结果后,对查询结果进行后处理,包括综合查询结果、消去重复出现的书目等;最后将检索结果转化为HTML格式,并返回给用户。这样,用户就可以通过Web浏览器实现基于Z39.50 的书目检索。
4 结束语
本文对网络信息服务系统中涉及的关键技术作了较为深入的研究。目前,Computer-NIS原型系统已经投入使用。实践表明,Computer-NIS可以用于情报收集与分析、网上教学等多种应用,有效地提高了信息获取的质量和效率。在该领域仍有许多问题值得探讨。如何在 DCOM /CORBA等分布式计算环境上实现多个信息服务系统之间的协作; 如何在对网络信息资源进行简单查询的基础上,开展分布式网络信息分析和挖掘;如何利用mobile agent技术改进传统的Web服务与检索模式, 这些都将是我们下一步要进行的工作。
收稿日期:1999年3月1日