蔣 韻 傅 俏 袁 潤
〔摘 要〕本文從介紹機構知識庫的背景和高校圖書館構建機構知識庫的意義入手,分析了為何選用開放源代碼數(shù)字資源管理系統(tǒng)DSpace為研究對象,并簡要描述了其功能特點,重點闡述了應用DSpace系統(tǒng)的實例。
〔關鍵詞〕機構知識庫;DSpace;數(shù)據(jù)模型
〔中圖分類號〕G250.74 〔文獻標識碼〕B 〔文章編號〕1008-0821(2009)05-0175-03
An Application Research of a DSpace-based Institutional Repository SystemJiang Yun1 Fu Qiao2 Yuan Run1,2
(1.Institute of Scientific & Technical Information,Jiangsu University,Zhenjiang 212013,China;
2.Library,Jiangsu University,Zhenjiang 212013,China)
〔Abstract〕This paper started with the introduction of institutional repository background and the significance of university library constructing the institutional repository,it analyzed why the open source digital resources management system:DSpace was selected as the research object,and briefly described the function characteristic of DSpace,then focused on the application of the DSpace system examples.
〔Keywords〕institutional repository;DSpace;data model
1 背 景
1.1 機構知識庫的背景
機構知識庫(Institutional Repository,IR)是利用網絡及相關技術,依附于特定機構而建立的數(shù)字化學術數(shù)據(jù)庫,它收集、整理并長期保存該機構及其社區(qū)成員所產生的學術成果,并將這些資源進行規(guī)范、分類、標引后,按照開放標準與相應的互操作協(xié)議,允許機構及其社區(qū)內外的成員通過互聯(lián)網來免費地獲取使用[1]。
機構知識庫中的機構這里主要是指大學等學術機構,該機構收集、保存本單位科研人員的研究成果,并提供廣泛檢索才稱為機構知識庫。機構知識庫應用的軟件主要有英國南開普敦大學開發(fā)的Eprints、美國麻省理工大學圖書館與惠普公司聯(lián)合開發(fā)的DSpace、歐洲核研究理事會開發(fā)的CDSware、康奈爾大學等開發(fā)的Fedora等。
1.2 高校圖書館構建機構知識庫的意義
眾所周知,科研成果大多數(shù)是由高校和科研機構產生的。隨著計算機、網絡數(shù)字技術的發(fā)展,高校教師與科研人員普遍使用計算機處理各種信息,從而產生了大量的原生數(shù)字信息資源。一個機構(大學)將本身的研究產出,如期刊及會議論文、研究報告、投影片、教材等,以數(shù)字的方法保存并建立網絡平臺,提供查詢與使用,并且收錄資料以全文為主,并建立全文檢索機制。機構典藏并不是取代期刊發(fā)表,而是增加一個研究成果被利用的渠道,即曝光率及影響力。這是因為隨著網絡發(fā)展越來越成熟,在網絡上能提供全文的文章所造成的影響力(即被引用次數(shù))會愈來愈顯著。另外,印刷型文獻和電子學術期刊費用的大幅度漲價,也使的高校圖書館的文獻經費負擔日益沉重。在這些諸多因素的影響下,許多高校圖書館開始認為建立數(shù)字化的機構知識庫對于緩解當前的矛盾不失為一個可行的方案。
作為學術資源的集散地和傳播者的高校圖書館,承擔著信息資源的管理、傳播、開發(fā)和服務的重任。這需要我們更多地關注如何充分開發(fā)利用掌握在廣大教學和科研人員手中的原生數(shù)字信息資源,將分散存儲在個人、院系或者研究所計算機上的學術信息集中保存起來,進行有效的組織和管理,并開放給其他學者參考使用,機構間也可通過合作的方式,交流彼此的典藏作品。因此機構知識庫,作為一種新的資源組織形式和學術傳播方式出現(xiàn)了,并將推動圖書館管理方式的進一步改進和完善。實際上,機構知識庫的大規(guī)模發(fā)展以及引起學術界的普遍關注也都離不開圖書館尤其是高校圖書館的引導、參與及支持。因此,高校圖書館有責任積極參與機構知識庫的建設,促進信息資源的共享。
2 數(shù)字資源管理系統(tǒng)DSpace
2.1 DSpace的優(yōu)點
上面提及的4個系統(tǒng)中,我們之所以選取DSpace作為構建基于開放存取的機構知識庫系統(tǒng),是由于其具有如下優(yōu)點[2]:
2.1.1 開放源代碼(open source)
DSpace是基于伯克利源代碼發(fā)布許可協(xié)議(BSD)的一個開放源代碼的軟件平臺。作為開放源代碼,任何人、任何組織均可以下載該程序,并且還可以修改它。而且其所使用的第三方軟件也都是開放源代碼系統(tǒng),如PostgreSQL:開放源碼的關系數(shù)據(jù)庫系統(tǒng);Jakarta Tomcat,Java服務器組件等。
2.1.2 功能集成度高
DSpace集數(shù)字資源采集、數(shù)字對象存儲與管理、搜索技術、信息傳遞技術和權限認證等功能于一體,高度集成了數(shù)字圖書館的五個技術環(huán)節(jié)。呈現(xiàn)在用戶面前的是一個高度集成的、擁有諸多功能的系統(tǒng)。
2.1.3 移植性強
DSpace采用〣/S(Browser/Server)結構設計,基于JAVA環(huán)境開發(fā)和使用,并且統(tǒng)一使用UTF-8編碼,這使其具有較強的移植性。
2.1.4 提供全球惟一標識符
DSpace使用Handle System提供全球惟一的、穩(wěn)定的標識。
2.2 DSpace及其系統(tǒng)功能研究
DSpace是MIT與HP公司合作開發(fā)的數(shù)字資產管理系統(tǒng),它實現(xiàn)了知識資源的收集(collect)——保存(preserve)——發(fā)布(distribute)的一般過程。2002年10月,這個平臺開始在MIT正式服務,2002年底,向全世界公開了基于BSD開放源代碼許可協(xié)議的DSpace源碼,基于它的開放源代碼特點,用戶可以根據(jù)自己的需要對該系統(tǒng)進行定制和擴展。從2002年12月發(fā)布1.0版開始,DSpace的版本隨著功能的增加不斷更新。
2.2.1 系統(tǒng)三層體系結構分析
DSpace的系統(tǒng)由存儲層、業(yè)務邏輯層和應用層組成,每層都有一系列的組件構成[3](如圖1所示)。
(1)系統(tǒng)的底層是存儲層,它的功能主要是對內容對象(也就是位流數(shù)據(jù))和相關的元數(shù)據(jù)進行存儲。DSpace使用本地文件系統(tǒng)和SRB(Storage Resource Broker)實現(xiàn)了任意內容對象的存儲,而元數(shù)據(jù)的存儲則通過關系數(shù)據(jù)庫型PostgreSQL(或其他關系數(shù)據(jù)庫,如Oracle)來實現(xiàn),其間系統(tǒng)需要調用JDBC來完成存儲。(2)系統(tǒng)的中間層是業(yè)務邏輯層,它負責完成相應的功能模塊。通過一系列的類文件對DSpace中的各類對象進行抽象,然后用來實現(xiàn)內容檢索、瀏覽、認證管理、內容管理、句柄管理、工作流管理、用戶管理和歷史信息管理等功能。(3)系統(tǒng)的最高層是應用層,該層提供了基于Web的用戶界面來應用和管理DSpace系統(tǒng),使其使用起來會極為方便。應用層是DSpace與外界的交流層,除了已有的Web用戶服務、還提供了一系列的接口。該層的各個組件的功能可通過Java編寫DSpace的Servlet和JSP來調用實現(xiàn)的。
2.2.2 分層對象的數(shù)據(jù)模型分析
DSpace系統(tǒng)的數(shù)據(jù)組織模型與高校的學院、系別、教研室/實驗室等的組織結構大致相對應。DSpace是使用分層結構的對象來表示數(shù)據(jù)空間,這些對象自頂向下分別為:社區(qū)(community)、合集(collection)、條目(item),數(shù)字包(bundle)和比特流(bitstream)。其中條目為存儲庫中的基本存檔單元,即指提交到DSpace系統(tǒng)的數(shù)據(jù)單元。上述這些數(shù)據(jù)模型的結構關系是:若干的比特流組成一個數(shù)據(jù)包,若干的數(shù)據(jù)包組成一條條目,若干的條目組成一個合集,若干的合集再組成一個社區(qū)。DSpace的這種數(shù)據(jù)結構將內容對象與媒體類型分離,很好地解決了基于不同格式的信息存儲問題。
3 應用DSpace系統(tǒng)的實例
3.1 硬件及軟件的前期準備
本館以DSpace系統(tǒng)為基礎,開發(fā)針對高??蒲谐晒男畔⒐芾硐到y(tǒng)。首先選用性能指標優(yōu)良的服務器作為DSapce的硬件平臺,我們采用的是惠普ProLiant DL380 G5服務器,機器配置為Intel Xeon CPU E5335 2.0GHz*4,2GB的內存,400G硬盤。然后參照官方網站的文件以及國內外先行者的經驗,我們選用類Unix操作系統(tǒng)(RedHat linux7.0)來搭建DSpace系統(tǒng)。使用類Unix操作系統(tǒng)是由于其服務穩(wěn)定、編寫的代碼移植性強、對開源軟件提供良好的支持和文件系統(tǒng)符合DSpace需要等原因。由于DSpace源代碼是由HTML和部分嵌入的Java代碼組成的,還必須下載Java開發(fā)包JDK1.5和Apache ANT 1.7.0以保證DSpace的編譯和運行環(huán)境。Web服務器則采用Tomcat 6.0。后臺的數(shù)據(jù)庫使用的是PostgreSQL 8.2(其更高版本會有兼容問題)。PostgreSQL是開源數(shù)據(jù)庫軟件,是目前功能最強大,特性最豐富和最復雜的自由軟件數(shù)據(jù)庫系統(tǒng),有些特性甚至連商業(yè)數(shù)據(jù)庫都不具備,支持事務、子查詢、多版本并行控制系統(tǒng)、數(shù)據(jù)完整性檢查等特性。最后,從官方網站http:∥www.DSpace.org/下載DSpace源代碼。
3.2 安裝服務器,搭建技術平臺
在安裝DSpace前,先以完全安裝的方式安裝好linux操作系統(tǒng),當使用DSpace1.3.2版本之前的,需要構架DNS服務器和Sendmail郵件服務,此配置過程相對比較復雜。所以本文建議使用DSpace1.4以后的版本,此版本不需要自己再搭建郵件服務器,只需在dspace.cfg作些配置就好了。服務器平臺架設好后進行PostgreSQL數(shù)據(jù)庫安裝與配置工作。再安裝JDK、ANT、Tomcat,并在環(huán)境變量中進行配置,直到每個軟件都能正常運行。
3.3 DSpace的安裝
將下載的DSpace安裝源代碼解壓縮,并將相對應版本的PostgreSQL JDBC驅動程序拷貝到DSpace安裝文件中,創(chuàng)建DSpace數(shù)據(jù)庫用戶與DSpace數(shù)據(jù)庫,根據(jù)Tomcat和PostgreSQL的設置來配置DSpace.cfg文件后,就可以利用ANT編譯安裝DSpace了。最后再創(chuàng)建DSpace管理員賬戶。這里需要注意的是,DSpace需要和Tomcat用同一個用戶來運行。
3.4 基于Unicode/UTF-8的統(tǒng)一編碼環(huán)境的設定
DSpace基于Java技術設計和開發(fā),其國際化主要通過Java技術在支持國際化軟件設計和開發(fā)方面的特性和優(yōu)勢,采用基于Unicode標準和可本地化獨立資源文件的技術和方法來實現(xiàn)。
①在典型的基于Java的Web應用環(huán)境中,用戶與Web應用之間的交互可能涉及“瀏覽器——web服務器——web應用——JDBC——數(shù)據(jù)庫”中的各個環(huán)節(jié)和過程,由于各個環(huán)節(jié)可能采用不同的字符編碼模式,因此,使得流經這些環(huán)節(jié)的數(shù)據(jù)或信息流經常不可避免地要在不同編碼格式之間進行主動或被動地轉換,其中任一環(huán)節(jié)編碼模式的失當,都可能導致數(shù)據(jù)或信息轉換的錯失。當前,能夠比較徹底地解決這一問題的主要方法是統(tǒng)一各環(huán)節(jié)的編碼格式,建立基于Unicode標準的統(tǒng)一編碼環(huán)境[4]。DSpace即采用了這一方法來實現(xiàn)對多語言環(huán)境的支持和本地化的便利實現(xiàn)。
以DSpace使用Tomcat 6.0同時作為Web服務器和應用服務器為例,要保證以Unicode/UTF-8方式對HTTP請求數(shù)據(jù)進行編解碼,只需在其配置文件server.xml中增加如下有關URIEncoding的設置:
<!--Define a non-SSL HTTP/1.1 Connector on port 8080-->
<Connector port=″8080″
protocol=″HTTP/1.1″connection Timeout=″20000″redirect Port=″8443″
URIEncoding=″UTF-8″/>
②對于任何DSpace中的JSP文件,都在其第一行使用JSP Page指示符明確指定字符編碼格式為“UTF-8”,如:
<%@ page contentType=″text/html;charset=UTF-8″%>
③在安裝數(shù)據(jù)庫環(huán)節(jié),若使用PostgreSQL 8.x以下的版本,需要在配置和編譯時使用命令./configure--enable-multibyte--enable-unicode--with-java;若使用8.0以上版本,命令后門的這些選項已成為默認的編譯選項,因此不需要在編譯階段再配置。在創(chuàng)建供DSpace使用的數(shù)據(jù)庫時也要使用編碼選項并聲明為“UNICODE”,如“createdb-U dspace-E UNICODE dspace”,這樣就使數(shù)據(jù)庫內部以UTF-8方式對數(shù)據(jù)進行編碼和存儲。
至此,一套支持DSpace運行的基于Unicode/UTF-8的完整的編碼環(huán)境就基本構建成了,這將為DSpace后續(xù)的擴展性的應用奠定了良好的基礎。
4 結束語
以上是我們應用DSpace系統(tǒng)的實例的一些安裝經驗,當然其中還有一些不足之處。到目前為止,我們已經初步完成了DSpace系統(tǒng)的安裝,并導入一些數(shù)據(jù)以供測試系統(tǒng)的性能。由于高??蒲谐晒N類非常繁多,每種類型的數(shù)據(jù)除了有公有字段,還包含特有的字段。因此,DSpace系統(tǒng)默認的提交頁面元數(shù)據(jù)無法滿足要求,所以下一步工作就是要根據(jù)不同類型的文獻定制錄入界面的元數(shù)據(jù)。
參考文獻
[1]柯平,王穎結.機構知識庫的發(fā)展研究[J].圖書館論壇,2006,26(6):243-248.
[2]蔡華利.數(shù)字資產管理系統(tǒng)——DSpace研究[J].情報科學,2006,24(9):1405-1408.
[3]DSpace官方網站[EB].http:∥www.dspace.org/index.php?option=comzcontent&task=view&id=145,2008-10-15.
[4]林穎,張智雄.構建基于DSpace的中文機構倉儲系統(tǒng)[J].圖書情報工作,2007,(2):87-91.