数字图书馆分布式存储设计

2015-09-18 13:08高菲
软件导刊 2015年8期
关键词:数据集成数字图书馆

高菲

摘要:数字图书馆传统的数据存储模式不能适应当前存储要求,应用分布式存储能够有效缓解这一矛盾。基于数字图书馆的分布式存储要求,研究特定数字资源的存储与管理及数字资源存储与管理的组成结构,并对服务管理系统和数字资源集成进行了设计。

关键词:数字图书馆;分布式存储结构;数据集成;数字资源管理

DOIDOI:10.11907/rjdk.151441

中图分类号:TP319

文献标识码:A 文章编号文章编号:16727800(2015)008012903

0 引言

随着数字图书馆建设的发展,传统的集中式数据服务模式显然已经无法满足当前需求,这就要求人们在数据分散的环境下,在众多不同地域、不同技术平台、不同组织检索方式并存条件下,研究在数字资源存储管理中需要解决的问题,建立针对海量数据的有效存储机制,整合整个分布环境中的资源和服务[1]。这种有效的分布式存储管理框架及其实现无疑成为了当前的研究重点。在数字图书馆数字资源建设中,直接存储和管理数字资源的数字资源服务管理系统是分布式存储体系中最为关键的系统,本文在对现有数字图书馆分布式存储框架进行研究与分析的基础上,探讨数字资源服务管理系统设计与实现。

1 数字图书馆分布式存储结构框架

数字图书馆中在资源建设阶段生成的数字资源,由分布式存储结构进行存储和管理,然后才能向用户提供服务。具体而言,分布式存储体系应提供如下关键功能:数字资源存储与管理、数字资源调度、数字资源发布。分布式存储系统存储和管理的数据由数据获取层提供,包括对原始资源的加工和对网络数据的采集。整个存储结构层由数字资源发布、数字资源存储与管理、数字资源调度等

几个单元组成。在存储结构之上由数字资源服务层为用户提供服务。目前的存储结构在整体上已经体现出了分布式存储管理体系的主要功能和相互关系,随着数字图书馆资源建设的发展,也遇到了一些需要解决的问题:①由于不同的数字资源具有不同的存储和访问特点,在进行数字资源的分布式存储与管理时也必须针对特定数字资源的不同特点进行有针对性的设计[2];②随着图书馆馆藏资源数字化进程的发展,在进行馆藏资源管理时必须考虑把馆藏数字化资源以资产的方式进行管理,以真正体现数字化资源的价值。

因此,需要将资产化管理的方法引入数字图书馆的数字资源存储与管理中,在分布式存储与管理这一层次体现出这一点。针对上述两个问题,本文将进行相应的分析和探讨,并提出改进后的数字资源存储与管理结构框架。

1.1 特定数字资源的存储与管理需求

根据数字资源建设相关技术标准,必须保持馆藏资源原貌,尽可能向读者提供资源的最充分信息。对于这几种数字资源的对象数据,采用图像文件形式,用TIFF作为原始文献的无损格式,同时以不同尺寸的JPG文件作为文献资源的辅助参考格式[3]。在设计分布式存储结构时,应考虑图形对象的特点进行针对性的设计。

如图1所示,针对每种数字资源,都对应一个数字资源管理服务系统,但所对应的数字资源并不一定存储在不同的对象服务器中。根据数据量的多少以及本身存取特点的异同,它们可以存储在同一台对象服务器中,甚至同一个数据库中。

1.2 数字资源存储与管理模块组成结构

数字图书馆中存储的数字资源应由两部分组成:为用户提供服务的数字资源、进行仓储的数字资源。数字资源存储与管理模块应由以下两部分组成:一是管理面向用户的数字资源的数字资源服务管理系统;二是以资产的方式进行管理的数字资源仓储系统[4]。为了实现数字资源存储与管理模块内部的模块化,并将数字资源的资产化管理引入到数字资源存储与管理中,提出数字资源存储与管理模块如图2所示。

图1 数字资源管理服务系统并行结构

分布式存储体系中的数字资源存储与管理模块由直接面向用户的数字资源的一些并行管理模块,以及实现数字资源资产化管理的数字资源仓储管理系统共同组成。

图2 数字资源存储与管理模块

2 服务管理系统设计

数字对象管理服务器是数字图书馆建设的基本软件系统之一,是数字文献资源发布的第一个环节,它负责数字对象的存取、显示;同时负责向元数据检索管理子系统发布有关数字对象的元数据。其主要功能模块应包括如下几项:用户验证、数据管理、数字对象存储管理、检索系统、元数据分发。系统内各主要功能模块的结构及关系如图3所示。

由图3可以看出,用户验证模块用来保证数字资源服务管理系统的安全性,只有经过合法授权的数字资源管理者才能登陆使用数字资源服务管理系统。经过资源加工标引后的数字资源分为元数据和对象数据传递到数据管理模块,其中元数据需要事先由MARC元数据转换成DC元数据。数据管理模块通过数字对象存储管理模块把不同的对象数据存储到相应的服务器中。为了给数字资源服务层的资源整合检索提供服务,元数据分发模块还向检索系统提供元数据检索服务并向其发布检索到的元数据。

图3 数字资源服务管理系统框架

3 数字资源集成设计与实现

3.1 异构数据集成方式

为解决数字图书馆中异构数据的集成问题,可以在应用程序与数据库数据之间设置一个中间层,通过中间层用XML把数据封装成统一格式,然后再进行相应操作。异构数据集成方式如图4所示。

图4 异构数据集成方式

图4所示的异构数据库可以是IBMDB2、MSSQL Server、Oracle、Informix、Sybase、Access等主流的商业数据库系统。这些数据源之间彼此独立,由不同的建设单位管理。各异构数据库通过相应的数据库驱动把数字对象提交给中间层,转换成统一的XML标记数据。

结构的第二层属于“中间件”层,负责将各异构数据源的数据转换成可以交互的格式,通常是XML格式。这一层的标准语言是XML。第二层通过提供统一的接口API为应用业务的开发提供标准的XML接口,这使得开发者不必再去区分是对数据库进行操作还是对XML文档进行操作,只要统一针对XML方式进行开发即可。这样,有关数据交互的应用程序开发就会变得非常简单。

各数据存储单元间的通信是在第三层实现的。这一层的通信可以采用很多种交互手段,如FTP、MessageSystem、JavaMail等,这主要由应用实现的具体性能要求以及成本要求决定。

由于在数字图书馆中应用到了不同的数据库管理系统,必然要解决不同数据库之间的互操作问题。根据存储结构中的实际应用,这里主要采用JDBC的实现方式。

3.2 数字对象封装与存储

在数字图书馆建设中,一般采用DC元数据标准,DC元数据共有15个标记元素,针对具体的数字对象可以进行相应的裁减和修改。

对于所要存储的数字对象而言,在存储时要分别考虑元数据和对象数据的特点,根据数据本身的特点和提供的服务类型来决定其存储方式。

(1)根据元数据和对象数据的特点进行选择。对于元数据,一般是规范的DC格式标引的XML文件,这种文件的特点是文件比较小,而且要求在用户进行检索时能够快速显示。为此,将元数据直接存放DB2这样的关系型数据库中,通过直接操作数据库的方法来提高对元数据的访问速度。

对于对象数据,通常是图像文件或流媒体文件,这样的文件一般尺寸较大,而且在传统关系型数据库中进行存储需要进行相应转换,存取速度较慢。为了便于管理,通过IBM内容管理系统ContentManager进行存储,以提高存储效率。

(2)接口API的选择。这里的API是指完成XML文档与数据库数据之间相互转换功能的软件包。采用SAX类API来处理XML文档,而与数据库的接口则使用JDBC。

参考文献:

[1] 镇锡惠.数字图书馆的技术框架[M].北京:北京图书馆出版社,2002.

[2] 高文,刘峰,黄铁军,等.数字图书馆——原理与技术实现[M].北京.清华大学出版社,2000.

[3] 王轩,黄丹,陈静.数字图书馆发展现状研究[J].软件导刊,2010(5):35.

[4] 曾红伍.网格存储技术在数字图书馆中的应用[J].软件导刊,2009(1):122124.

(责任编辑:孙 娟)

猜你喜欢
数据集成数字图书馆
浅析“互联网+”时代的图书馆管理
XML数据交换技术在中医智能化诊断数据集成中的应用
高校一表通系统建设探究
基于数据集成的水上项目国家队数据库网络管理平台的设计与开发