馬寧寧周晨馮紅娟
數字資源長期保存開源軟件比較研究*
馬寧寧周晨馮紅娟
論文介紹了8種數字資源長期保存開源軟件:Invenio、DSpace、Eprints、Fedora、Drupal、i-Tor、MyCoRe和OPUS,闡述了它們的產生和發展過程,并從軟件概況、技術規范、知識庫及系統管理、系統性能及系統維護5個方面進行了比較分析,概括了這些軟件的共同點和不同點,希望能夠為各機構選擇長期保存軟件提供參考,并為國內從事數字圖書館系統設計和開發的同行提供參考。
數字資源長期保存開源軟件數字圖書館技術規范知識庫
數字資源長期保存的概念自20世紀80年代提出以來,國內外一直在進行著大量的研究,并且涌現出一大批功能完善、各具特色的數字資源長期保存開源系統或軟件,深得各國圖書館的青睞。構建數字資源長期保存系統的開源軟件發展極為迅速,截止到目前,已有Archimede,ARNO,Invenio,DSpace,Eprints,Fedora,Drupal,I-Tor,MyCoRe和OPUS等10余種。本文重點介紹8種比較有代表性的數字資源長期保存開源軟件,并從數字圖書館內容管理系統應具備的主要功能(資源的批量導入與導出、存檔管理及系統維護、用戶查詢與瀏覽、訪問控制)的角度,對這8個系統進行了詳細的比較和分析。
1.1 DSpace
DSpace由美國麻省理工大學圖書館和惠普公司實驗室聯合開發,第一個版本于2002年12月發布,是一個收集、組織、存儲、索引、發布任何格式和層次結構的數字對象的內容管理發布系統。DSpace遵循BSD協議,采用DC(Dublin Core)元數據來描述數字對象,支持OAI-PMH2.0協議,可以導出METS格式的數字對象,通過METS與其他系統交換資源。DSpace系統結構分為三層:應用層、事務邏輯層和存儲層。應用層包含DSpace的用戶應用界面、數據提供導入導出工具、統計工具等功能;事務邏輯層負責存檔文件、電子用戶、授權及工作流等內容的管理;存儲層負責元數據及內容的物理存儲,如PostgreSQL、Oracle數據庫的訪問管理、文件系統管理、維護內容索引等[1]。
DSpace可擴展性強、功能集成、界面友好,而且使用的第三方軟件也均為開源軟件,如PostgreSQL,JDK,Apache等,因而受到很多高校和研究機構的青睞。當然,DSpace也有不足之處,在實際應用中需要對其進行本土化處理,如:漢化系統的用戶界面、郵件內容、提交作品的描述信息等內容,需根據實際情況設置系統的主題、提交策略和服務條款,從而對系統進行相應的優化改進。
1.2 Fedora
Fedora(Flexible Extensible Digital Object and Repository Architecture)系統始于1997年,在Andrew W.Mellon基金會的資助下,由弗吉尼亞大學和康奈爾大學聯合開發,2001年發布其第一個版本。Fedora遵循Mozilla許可協議,采用CORBA和Java技術實現,是一個通用的數字對象管理和存儲系統。Fedora系統由數字對象和倉儲框架兩大實體組成,數字對象是Fedora體系結構的核心,提供了一個集成內容(包括數據和元數據)和行為(對內容的操作)的框架;Fedora倉儲是為數字對象服務的,提供了對數字對象的存儲管理和訪問接口,客戶端通過管理和訪問接口跟倉儲進行交互。Fedora的體系結構分為web服務層、邏輯應用層和存儲層三層[2]。
Fedora系統中的數字對象使用METS標準編碼,以XML格式存儲,方便了數據導入導出時的信息交換。Fedora實現了數字對象框架,擴展性強,適合存儲和管理各種屬性不同的復合數字對象;支持OAI協議,可以很方便地進行互操作,美國塔夫斯大學、維吉尼亞大學、英國赫爾大學等機構都是其忠實用戶。但由于Fedora僅提供管理和訪問數字對象的接口,沒有用戶界面,因此在實際應用中需要使用者進行二次開發,通過編碼來調用這些接口,使用門檻較高。
1.3 EPrints
EPrints由英國的Southampton大學研發,目的是創建一個高度可配置的基于Web的知識庫,2000年6月發布第一個版本,可存儲研究論文、圖像、科學數據、音視頻等所有數字格式的文件。EPrints用Perl語言編寫,使用Apache和MySQL作為其網絡服務和存儲軟件;遵循OAI-PHM2.0協議,靈活性強,用戶可以根據需求對其進行修改。EPrints還可以自動安裝,可用一種或多種格式存儲數字對象,支持多種元數據方案,自動檢查數據完整性,基于web進行系統維護,可通過網頁提交、訂閱、點評資源等,因此擁有廣泛的用戶群,如:西班牙的E-LIS項目、荷蘭Twente大學、澳大利亞昆士蘭大學等。
EPrints系統內包含四個區域,分別為用戶工作區、編輯/提交緩沖區、存儲區、刪除區。用戶工作區用來存儲未編輯完或未準備好提交的記錄;編輯/提交緩沖區存儲等待批準審核的記錄;存儲區存儲已審核通過、允許發布、可被檢索使用的記錄;刪除區用于存儲被邏輯刪除的記錄,EPrints中的數據是被長久保存的[3]。所謂刪除,只是從發布區域移走而已。
1.4 Drupal
Drupal是一套由63多萬用戶和開發人員共同維護與開發的開源內容管理系統,基于PHP開發,基本架構為PHP+Mysql,可以定制各種功能模塊,具有典型的web2.0特征,以簡潔的代碼實現了強大的功能。Drupal是一個建設動態網站的開源平臺和內容管理系統,允許用戶輕松地組織、管理和發布各種內容,提供廣泛而全面的功能和服務,包括:用戶管理、發布工作流、討論功能、新聞聚合、基于受控詞表的元數據操作、用于內容共享的XML發布功能。由于功能模塊和參數設置均可以自由搭配,Drupal可以支持從個人博客到大型社區驅動網站的各種網頁項目[4]。
Drupal提供了一個超薄而功能強大的核心組件平臺。它基于LAMP平臺,并且支持多種語言,使用容易;模塊化的體系結構使功能組織定制更加靈活,還提供了完善的管理和分析工具;龐大的開發團隊推動著Drupal的不斷發展和完善。
Drupal具有三層體系結構,即數據持久層、邏輯層和表現層。數據持久層負責持久保存各類數據對象,支持Mysql、PostgreSQL等關系型數據庫,其它模塊可以通過調用核心數據庫的API來訪問其中的數據;邏輯層是整個系統的核心,包括Drupal核心庫和模塊組兩部分,通過各個功能模塊對數據進行業務和邏輯處理;表現層負責存檔數據的用戶呈現,以用戶為中心通過主題系統提供強大的內容表現機制。
1.5 Invenio
Invenio是一個幫助用戶構建自己的數字圖書館或網絡文檔庫的免費軟件包。該軟件提供的技術覆蓋了數字圖書館管理的所有方面,從文件攝取,到分類、索引、策劃和發布。Invenio符合OAI-OMH(Open Archives Initiative metadata harvesting protocol,開放文檔計劃元數據收割協議)之類的標準,并使用MARC 21作為其基礎書目格式。Invenio具有靈活性和執行性,它是一個管理中等規模(幾百萬條記錄)文檔庫的綜合解決方案。
Invenio原本由CERN(歐洲核子研究中心)開發,運行CERN的文件服務器,管理著100多萬條2002年以來高能物理方面的書目記錄,涵蓋了文章、圖書、期刊、照片、視頻等內容。目前,Invenio由一個國際合作組織共同開發,該組織包括:CERN、DESY、EPFL、FNAL和SLAC,全球有30多個科研機構正在使用Invenio。用戶可以直接到Invenio官網上免費下載安裝軟件包。Invenio具有如下特點。
(1)資源導航樹:文件被組織在集合中,常規和虛擬的集合樹,每個集合個性化的入口,以及CERN中分裝在700個集合中的100多萬條文檔。
(2)強大的搜索引擎:為實現對包含200多萬條記錄的知識庫的快速檢索而特別設計的索引,自定義的簡單和高級檢索界面,將元數據、全文、引文檢索整合在一個檢索框中,檢索結果按照集合聚類。
(3)靈活的元數據方案:標準元數據格式(MARC),管理著文章、圖書、論文、圖片、視頻、博物館藏品等多種格式的文件,自定義顯示和鏈接規則。
(4)用戶個性化訂制:用戶定義的收藏夾和自動email通知提醒,與用戶群分享收藏的文件,像亞馬遜那樣對知識庫和收藏夾中的文件進行評論[5]。
1.6 I-Tor
I-Tor由荷蘭科學信息服務研究所(簡稱NIWI)的創新技術應用(IT-A)部門開發。是一組基于Linux,Java,MySQL,Mirage和其它免費組件開發的、用于開放知識庫的工具和技術。它收割OAI,并將數據庫變成開放存檔,包括相似性、鏈接、基于Lucene的檢索。I-Tor的開發重點面向四個領域:電子出版物、知識庫、內容管理系統、“合作實驗室”。I-Tor是一個基于網絡的技術,用戶利用I-Tor可以通過Web界面展示各種類型的信息,而不用考慮數據存儲在哪兒或存儲格式是什么[6]。
I-Tor的目標是實現一個“獨立于數據”的存儲庫,內容和用戶界面功能作為該系統兩個獨立的部分。從本質上講,I-Tor的角色既是一個OAI服務提供者(能夠收割OAI兼容的存儲庫和其它數據庫),又是一個OAI數據提供者。
由于I-Tor能夠從各種關系數據庫、文件系統和網站發布數據,所以該系統為機構組織構建知識庫提供了相當大的余地。I-Tor可以為知識庫創建新的數據庫,也可以使用已有的關系數據庫。此外,I-Tor還能從研究者的個人主頁中直接收割數據。最終用戶可以直接通過網頁瀏覽器向系統添加內容,而無需軟件開發者做中介。
由于這種設計,I-Tor不會執行一組或子組的特定工作流。相反,I-Tor為機構提供構建任何組織需要的工作流的工具(例如,細粒度安全、通知等),而無需將工作流整合到I-Tor系統中。利用I-Tor,機構可以在現有的一組完全不同的數字資源庫的基礎上構建一個新的知識庫。
1.7MyCoRe
MyCoRe是德國埃森大學MILESS項目的成果。MyCoRe中的“CoRe”代表“Content Repository”(內容知識庫)或“Core”(核心),“My”代表本地適應和使用。MyCoRe系統目前由一個大學聯盟負責開發,它提供一個核心軟件工具包,來支持數字圖書館和存檔的解決方案。利用該軟件包,無需本地編程,即可適應本地需求,并具有可配置性。
MyCoRe的數據模型是完全可配置的,此外,MyCoRe還基于“核心”功能提供了一個應用程序樣例——“DocPortal”,向用戶展示如何使用元數據配置文件構建自己的應用程序,DocPortal既是一個演示和測試環境,又可作為一個模型和應用程序框架,來構建自己的基于MyCoRe的應用程序。“核心”功能包含了知識庫實施中需要的所有功能,包括:元數據管理、分布式檢索地理上分散的MyCoRe知識庫、OAI接口、圖像查看器、集成的音頻/視頻流支持、文件管理及在線元數據編輯等。實際應用中,機構可以擴展或自定義核心模塊來滿足本機構的特殊需求。
MyCoRe并不向特定的底層數據庫強制編碼,而是提供一個持久層接口,以及不同數據庫的實現程序。除了各種開源數據庫系統的實現程序,MyCoRe還支持商業的、可用于大規模倉儲的IBM內容管理系統。
MyCoRe不是一個完整的、可立即使用的倉儲軟件(像EPrints或OPUS那樣),但它提供創建這些或類似應用軟件的API。所以MyCoRe的優勢在于提供強大的、全面的功能,具靈活性。例如,元數據模型、網絡接口、搜索及登記表格等功能都可以自由配置。此外,DocPortal可以理解為一個框架,初學者可以用其建立自己的第一個MyCoRe服務器。目前在德國有23家機構使用該系統。
MyCoRe的特點:進行元數據管理、分類管理,以統一資源名稱(URN)標準作為永久標識符,具備搜索、用戶和權限管理,支持OAI/Z39.50/WebService等接口,適用于各種圖片瀏覽器(可選)、集成的音頻/視頻流媒體服務器(可選),具有簡單的用戶工作流(可選)、簡單的Web內容管理系統、機構知識庫功能。
1.8OPUS
在大學的研究和教學過程中會產生大量質量相當不錯的出版物,如碩士論文、學位論文、報告、會議論文、講義等。這些科研成果很難被外界準確地檢索到,所以這類出版物通常被業內稱為“灰色”資源。為了改善這種狀況,在德國研究網和德國聯邦政府的高等教育部的資助下,斯圖加特大學圖書館和計算機中心于1998年開發了OPUS(Online Publications of the University of Stuttgart,斯圖加特大學網絡出版物)系統。OPUS為大學教師、學生和工作人員提供了一個管理其電子出版物(發表和未發表的文章、論文和學位論文)的系統,使每位大學成員(職工和學生)都能通過萬維網來發布、檢索和使用電子文檔[7-8]。
使用OPUS發布資源的方式是:將電子文檔轉換為PDF格式(可移植的文檔格式),然后錄入一些關于該文檔的元數據,這些元數據將以DC格式存儲在SQL數據庫中。所以檢索具有其他知名在線數據庫的典型特征:不同的檢索字段、分詞選項、布爾運算符等。此外,DC使其能夠加入不斷發展的、基于Web的搜索引擎和機器人。為了更容易地訪問斯圖加特大學的電子文檔,OPUS是康斯坦斯高級研究開放式圖書館網絡(Constance Advanced Research Open Library Network,CAROLINE)的成員。這意味著通過西南德國(South-West Germany,SWB)統一編目可以檢索到其中的資源,SWB中包含了該地區圖書館擁有的大約6百萬條出版物的題名信息。
OPUS是可擴展的,這意味著其他大學或機構也可以安裝該系統,從而使科學界可供獲取更多的電子文檔,目前有一百多家機構正使用OPUS系統來管理其電子出版物,可以同時檢索這些成員機構的所有資源。大多OPUS的實施是由機構的大學圖書館來管理和運營的,但也有一些是由圖書館和大學的出版社和/或學術計算機中心合作努力來管理運營的。
OPUS項目于1998年10月結束,目前OPUS的后續開發由斯圖加特大學資助,與巴登-符騰堡州圖書館服務中心(BSZ)合作開發,該機構擁有OPUS的開發平臺。自2011年8月,斯圖加特大學就部署了OPUS 3.2.1版本。未來的發展主要集中在標準互操作服務上,如一個網絡認證知識庫的使用統計和引文分析等。OPUS在以德語為主要語言的國家應用面非常廣。
面對眾多的開源軟件,用戶在選擇開源軟件時,除了需要明確本機構的業務需求,還需要評估和考察很多指標,本文將從軟件概況、技術規范等方面對上述8種主流數字資源長期保存開源軟件進行比較和分析。
2.1 軟件概況
比較開發機構、發布日期、注冊用戶數、版本號、最新版本等軟件信息,有利于我們初步了解各個開源軟件的整體狀況。具體見表1。

表1 軟件概況比較

表2 技術規范比較
2.2 技術規范
開源軟件和商業軟件的主要不同點在于技術規范和源代碼的公開。因此,考察一個開源軟件的重要指標就是其技術規范的優劣。技術規范的好壞一方面將影響到開源軟件的質量,另一方面也將決定軟件后期是否可以吸引更多的用戶和志愿程序員進行后期的開發和維護。表2對8種開源軟件所使用的開源許可協議、開發語言、操作系統、Web服務器、支持的數據庫、搜索引擎等技術規范進行了詳細的比較。
2.3 知識庫及系統管理
知識庫及系統管理部分從各個軟件可接受的文檔格式、是否可以提交包含多個文件的條目、是否可以上傳壓縮文件及是否支持批量導入及導出功能等方面對8種開源軟件進行了深入比較,詳見表3。

表3 內容導入/導出比較
2.4 系統性能
系統性能分可擴展性、易用性、模塊化三部分進行了比較。可擴展性好的軟件將為具有研發實力的機構使用系統提供更大的空間,可滿足更多的需求;易用性決定著開源軟件使用的技術“門檻”的高低;模塊化的設計將有助于開源軟件的愛好者和志愿者在軟件后期可以自由操作功能模塊。比較結果可見表4。

表4 系統性能比較
2.5 系統維護
開源軟件的后期開發依靠的是廣大的社區程序志愿者,雖然存在一定的組織,但都是松散的非商業化組織,所以在選擇開源軟件時還是需要選擇系統維護策略相對完善的軟件。對于是否有系統維護,詳見表5。

表5 系統維護比較
2.6 小結
通過上文的比較和分析,可以看出這些軟件都具有比較好的開放性、通用性和可擴展性。主要表現在:(1)這8個軟件均遵循開放源代碼許可協議,可以免費獲取,并可自由修改、升級和重組;(2)均可以在時下主流的操作系統(如Linux/Unix/Solaris)上運行;(3)均支持OAI(Open Archives Initiative,開放文檔計劃)元數據收割協議,使每個用戶都能加入全球互操作研究知識庫的網絡;(4)均支持國際上通用的底層數據庫(如MySQL/PostgreSQL);(5)可以接受所有的文檔格式;(6)可以批量導入元數據和對象數據,批量導出的數據和內容均具有可移植性;(7)均使用了模塊化的設計理念;(8)均可以自動安裝和更新腳本;(9)針對分布式環境下的數字資源設計了元數據管理方案,大都采用了國際上通用的元數據標準(如DC),并可以根據需求自主增刪元數據字段,8個軟件均可通過系統為存檔資源分配標識符;(10)均提供系統使用的幫助文檔或手冊,并且大多數軟件均提供對存檔資源的檢索和瀏覽功能。
從上面幾個表格的比較中,我們還可以看出:(1)Dspace目前在全球的用戶數目最多,其次是Eprints、Fedora、Drupal和OPUS,這5個軟件占據了全球90%以上的用戶;(2)Drupal和I-Tor在用戶服務方面的功能最為完善,不但可以定制界面、提供系統討論平臺、支持全文檢索,還提供豐富的資源檢索和瀏覽功能;(3)Dspace、Fedora和Invenio不但制定了數字資源的長期保存策略,還支持元數據的長期保存;(4)Fedora、Drupal、MyCoRe和I-Tor提供了豐富的API接口,擴展容易,而Dspace、EPrints、Invenio和OPUS系統本身的功能就比較完善,密封性強,擴展難度相對較大;(5)Fedora和MyCoRe這兩個軟件不提供面向終端用戶的數據操作和訪問界面,不是一個完整的、可立即使用的倉儲軟件,均需要進行二次開發,對使用機構的研發能力有較高的要求,而其它6個軟件的系統功能則比較完備,容易使用。
本文介紹的8種數字資源長期保存開源軟件沒有絕對的優劣之分,它們在創建之初都是根據特定的運行環境和功能要求、按照一定的原則和目的來設計開發的,側重點和優勢也各不相同。這些軟件各具特色,各有所長:Invenio能夠處理包含不同類型資源的中等規模倉儲;DSpace支持基于社區的內容政策和提交程序,并提供工具來長期保存提交的數字對象;Eprints提供了一個簡單、有用的倉儲系統,安裝了一個龐大而活躍的用戶社區;Fedora提供了一個功能全面的數字圖書館系統,是容納非常龐大的資源庫;I-Tor提供的工具包是構建一個訪問并集成顯示多種數據庫內容的統一環境;MyCoRe強調靈活性,以及配置軟件以支持完全不同的數字圖書館和倉儲數據庫的能力;OPUS則提供了一個龐大而多樣的德國用戶群。
總之,這8種軟件各具特色又有豐富的功能,可滿足大多圖書館保存和管理其數字資源的需求。各機構可根據自身的實際需求,選擇最適合的軟件作為其應用或開發平臺。本文通過對這8種軟件進行詳細比較,希望能為國內從事數字資源長期保存系統設計與開發的同行提供參考,也為機構團體選用長期保存開源軟件提供借鑒。
[1]DSpace website[EB/OL].[2013-10-03].http://www. dspace.org/.
[2]Fedora website[EB/OL].[2013-10-03].http://www. fedora-commons.org/about.
[3]EPrints website[EB/OL].[2013-10-15].http://www. EPrints.org/.
[4]Drupal Groups[EB/OL].[2013-10-15].http://groups. drupal.org/libraries.
[5]Invenio website[EB/OL].[2013-11-06].http://inveniosoftware.org/.
[6]i-Tor.[EB/OL].[2013-01-06].http://sourceforge.net/pr ojects/i-tor/.
[7]MyCoRe website[EB/OL].[2013-11-08].http://www. mycore.de/about.html.
[8]About OPUS[EB/OL].[2013-11-12].http://elib.unistuttgart.de/opus/doku/about.php?la=en.
[9]Invenio website[EB/OL].[2013-11-15].http://inveniosoftware.org/wiki/WikiStart?action=history.
[10]sourceforge[EB/OL].[2013-11-25].http://sourceforge. net/projects/i-tor/?source=directory.
[11]MyCoRe website[EB/OL].[2014-01-25].http://www. mycore.de/archive.html.
[12]DuraSpace website[EB/OL].[2014-02-05].http:// duraspace.org/about_dspace.
[13]Fedora Commons Registry[EB/OL].[2013-02-15]. https://docs.google.com/spreadsheet/ccc?key=0AnXL MjeiSH_KdElwYi11dGhQTURMZmR1eEdXbDFZMH c&hl=en_US#gid=0.
[14]Drupal Groups[EB/OL].[2014-02-15].http://groups. drupal.org/libraries/libraries#consortia.
[15]sourceforge[EB/OL].[2014-02-22].http://sourceforge. net/projects/fedora-commons/files/fedora/.
[16]sourceforge[EB/OL].[2014-02-27].http://sourceforge. net/projects/mycore/.
[17]MyCoRe website[EB/OL].[2014-01-05].http://sour ceforge.net/projects/dspace/files/?source=navbar.
[18]EPrints 3.3.11[EB/OL].[2013-12-03].http://files.eprints. org/827/.
[19]Drupal website[EB/OL].http://drupal.org/,[2013-12-17].
[20]Invenio website[EB/OL].[2014-03-23].http://invenio -software.org/wiki/Installation/Download
[21]MyCoRe website[EB/OL].[2014-03-29].http://www. mycore.de/download/index.html.
[22]OPUS Software[EB/OL].[2014-04-11].http://elib.unistuttgart.de/opus/doku/opus_sw.php.
馬寧寧國家圖書館館員。北京,100081。
周晨國家圖書館副研究館員。北京,100081。
馮紅娟國家圖書館館員。北京,100081。
Comparison Research of Several Digital Preservation Open Source Software
Ma Ningning,Zhou Chen,Feng Hongjuan
This paper introduces 8 kinds of digital preservation open source software:Invenio,DSpace,Eprints,Fedora, Drupal,i-Tor,MyCoRe as well as OPUS,describes the emergence and development of them,carries out a comparison and analysis from 5 aspects:software overview,technical specifications,repository and system management,system performance, and system maintenance,summarizes the similarities and differences of these software,hoping to provide a reference for organizations to choose the best digital preservation software,and provide some help to the designer or developer of digital library software system in China.
Digital preservation.Open Source Software.Digital library.Technical specification.Repository.
G250.76
2014-04-17編校:方瑋)
*本文系國家圖書館科研項目“網絡資源采集策略與服務方式研究”(項目編號:NLC-KY-2014-32)的研究成果之一。