基于云計(jì)算的數(shù)字圖書館服務(wù)平臺(tái)架構(gòu)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引言
云計(jì)算具有超大規(guī)模、虛擬化、高可靠性、易用性、高可擴(kuò)展性、按需服務(wù)、廉價(jià)等優(yōu)點(diǎn),因此,研究人員已經(jīng)探索將云計(jì)算技術(shù)應(yīng)用到數(shù)字圖書館服務(wù)共享平臺(tái)建設(shè)中,以提高資源共享度。喻昕、王敬一提出了一種數(shù)字圖書館云服務(wù)平臺(tái)的架構(gòu)模型,并設(shè)計(jì)了服務(wù)平臺(tái)管理、運(yùn)行機(jī)制。裴紅羅等提出了一種基于云計(jì)算的數(shù)字圖書館平臺(tái)架構(gòu),該平臺(tái)架構(gòu)分為模型數(shù)據(jù)庫、控制算法層和表現(xiàn)應(yīng)用層。陳宮、牛秦洲采用Eucalyptus和Portlet等技術(shù),實(shí)現(xiàn)了一種基于云計(jì)算的數(shù)字圖書館信息服務(wù)平臺(tái)。在我國(guó),數(shù)字圖書館建設(shè)主要集中在高校,但目前關(guān)于數(shù)字圖書館云計(jì)算平臺(tái)架構(gòu)的研究,幾乎都將平臺(tái)定位于學(xué)術(shù)資源共享,而忽視了平臺(tái)可以為數(shù)據(jù)挖掘、基因序列測(cè)定、天文信號(hào)分析等需高性能計(jì)算支撐的工作提供計(jì)算資源,此外,研究都沒有涉及云計(jì)算平臺(tái)的實(shí)現(xiàn)技術(shù)。因此,本文提出一種基于云計(jì)算的數(shù)字圖書館服務(wù)平臺(tái)的架構(gòu)及實(shí)現(xiàn)技術(shù),為高校自主建設(shè)數(shù)字圖書館云服務(wù)平臺(tái)提供參考。
1云計(jì)算
1.1云計(jì)算的基本架構(gòu)
Voorsluys等介紹了多個(gè)云計(jì)算架構(gòu),其中普遍被認(rèn)可的云計(jì)算通用基本架構(gòu)如圖1所示。其中:IaaS(Infrastructureasaservice)表示基礎(chǔ)設(shè)施即服務(wù),基礎(chǔ)設(shè)施由虛擬機(jī)、服務(wù)器、存儲(chǔ)設(shè)備、網(wǎng)絡(luò)設(shè)備、負(fù)載均衡設(shè)備等組成;PaaS(Platformasaservice)表示平臺(tái)即服務(wù),PaaS層包括數(shù)據(jù)庫、Web服務(wù)器和開發(fā)工具集等;SaaS(Softwareasaservice)譯為軟件即服務(wù),SaaS層屬于應(yīng)用層,為云用戶提供各種軟件服務(wù)。例如,GoogleAPPEngine實(shí)際上提供了PaaS服務(wù);Amazon的云服務(wù)包括:EC2、S3存儲(chǔ)服務(wù)和ElasticBeanstalk,從技術(shù)架構(gòu)來看,前兩者屬于laaS,而ElasticBeanstalk則屬于PaaS。
1.2云計(jì)算平臺(tái)發(fā)展趨勢(shì)
Google、Amazon等公司提供的云計(jì)算平臺(tái)無法滿足不同用戶的特定需求,所以,很多機(jī)構(gòu)(如美國(guó)國(guó)防部)開始構(gòu)建私有內(nèi)部云。一些小公司也致力于幫助客戶構(gòu)建云,如3Tera公司聲稱能夠提供許多Amazon沒有的管理服務(wù),自主建設(shè)私有云已經(jīng)成為一種潮流°Xen等開源平臺(tái)及軟件的出現(xiàn),使得學(xué)術(shù)界、中小企業(yè)自主搭建中小型云平臺(tái)成為可能,也為自主建設(shè)數(shù)字圖書館云服務(wù)平臺(tái)提供了一種更加貼近實(shí)際需求的選擇。
2基于云計(jì)算的數(shù)字圖書館服務(wù)平臺(tái)架構(gòu)
本文提出的基于云計(jì)算的數(shù)字圖書館服務(wù)平臺(tái)架構(gòu)如圖2所示,平臺(tái)由物理資源層、虛擬化資源層、數(shù)據(jù)層、服務(wù)層和用戶層組成,可以滿足用戶對(duì)于存儲(chǔ)資源、計(jì)算資源和網(wǎng)絡(luò)資源的需求。
2.1物理資源層
最底層的物理資源主要包括服務(wù)器、存儲(chǔ)器、網(wǎng)絡(luò)設(shè)備等。物理資源的規(guī)模與結(jié)構(gòu)相對(duì)固定,難以支持多變的服務(wù)需求,需要通過虛擬化方式將其整合,以便為上層服務(wù)。
2.2虛擬化資源層
利用虛擬化技術(shù)將各種物理資源整合(或劃分)并轉(zhuǎn)換為相應(yīng)的虛擬化資源,為云計(jì)算平臺(tái)提供了資源調(diào)配上的靈活性,提高了資源利用率。虛擬化資源層包括存儲(chǔ)資源、計(jì)算資源、網(wǎng)絡(luò)資源等。存儲(chǔ)資源通常由網(wǎng)絡(luò)文件系統(tǒng)和分布式存儲(chǔ)技術(shù)實(shí)現(xiàn)。計(jì)算資源主要包含CPU資源和內(nèi)存資源。網(wǎng)絡(luò)資源虛擬化抽象隔離了網(wǎng)絡(luò)中的路由器、交換機(jī)、網(wǎng)絡(luò)端口以及其他物理元素的網(wǎng)絡(luò)流量,將每個(gè)物理元素用虛擬表示形式代替,虛擬網(wǎng)絡(luò)元素配置靈活,能夠滿足特定需求。
物理資源層和虛擬化資源層共同組成了基礎(chǔ)設(shè)施層。為降低建設(shè)成本,可以采用開源技術(shù)構(gòu)建基礎(chǔ)設(shè)施層,從功能、虛擬化技術(shù)支持程度和商用評(píng)估三個(gè)方面綜合來看,OpenStack是構(gòu)建基礎(chǔ)設(shè)施層的理想選擇[7〕。作為開源云端運(yùn)算軟件的典型代表,OpenStack具有良好的靈活性、擴(kuò)展性和兼容性,采用分布式和異步的體系結(jié)構(gòu),支持多種局域網(wǎng)管理方式、虛擬機(jī)鏡像和實(shí)例管理、iSCSI存儲(chǔ)容器管理等,能幫助用戶快速構(gòu)建云基礎(chǔ)設(shè)施,已有超過100多個(gè)全球領(lǐng)先的IT公司參與了OpenStack項(xiàng)目。
2.3數(shù)據(jù)層
數(shù)據(jù)層包含各種異構(gòu)數(shù)據(jù)庫和數(shù)據(jù)庫訪問模塊。數(shù)據(jù)庫軟件種類繁多,既有商業(yè)化的數(shù)據(jù)庫軟件,也有開源的數(shù)據(jù)庫軟件,不同的數(shù)據(jù)庫軟件依賴于不同的操作系統(tǒng),如SQLServer只能運(yùn)行在Windows平臺(tái)上,無法與Unix兼容。在云計(jì)算環(huán)境下,各數(shù)字圖書館組成聯(lián)盟有利于資源最大程度的共享,作為網(wǎng)絡(luò)節(jié)點(diǎn)的數(shù)字圖書館,其節(jié)點(diǎn)異構(gòu)性是不可避免的。數(shù)據(jù)庫訪問模塊(也稱為信息集成模塊)用于屏蔽各種數(shù)據(jù)庫的差異性,并提供訪問接口,便于上層服務(wù)完成對(duì)異構(gòu)數(shù)據(jù)庫的操作,可以利用Java持久化API等技術(shù)實(shí)現(xiàn)這個(gè)模塊。Java持久化API簡(jiǎn)稱JPA是JavaEE5規(guī)范中用于對(duì)象/關(guān)系映射的一組API,它使得對(duì)象(構(gòu)成上層服務(wù)的基本組件)持久化更加規(guī)范和容易實(shí)現(xiàn)。
2.4服務(wù)層
服務(wù)層由用戶管理服務(wù)、安全管理服務(wù)、資源管理服務(wù)、借閱服務(wù)、檢索服務(wù)、書刊推薦、專題訂閱等模塊組成。用戶管理服務(wù)實(shí)現(xiàn)用戶的增加、刪除、修改、查詢,并通過角色劃分賦予各用戶以不同的權(quán)限。安全管理服務(wù)完成用戶身份認(rèn)證,按角色來區(qū)分訪問控制。資源管理服務(wù)負(fù)責(zé)存儲(chǔ)資源、計(jì)算資源和網(wǎng)絡(luò)資源的管理,包括調(diào)度、動(dòng)態(tài)部署、配置和回收。借閱服務(wù)實(shí)現(xiàn)紙質(zhì)圖書資料的管理。檢索服務(wù)滿足學(xué)術(shù)資源的檢索、下載,書刊推薦和專題訂閱等則實(shí)現(xiàn)個(gè)性化服務(wù)。
服務(wù)層的實(shí)現(xiàn)可采用J2EE平臺(tái)。J2EE是當(dāng)前的主流平臺(tái)之一,具有支持異構(gòu)環(huán)境、可伸縮性強(qiáng)、采用多層的分布式服務(wù)模型等優(yōu)點(diǎn),開發(fā)J2EE的工具很多(如Eclipse),這些工具通常都提供向?qū)?、上下文幫助、可視化工具及代碼自動(dòng)生成等功能,可避免不必要的重復(fù)編碼,幫助開發(fā)人員快速構(gòu)建應(yīng)用程序。
2.5用戶層
用戶通過門戶訪問云服務(wù),而訪問方式卻各不相同,可以分Web服務(wù)、Web應(yīng)用、外部服務(wù)和非Web應(yīng)用等,因此,需要實(shí)現(xiàn)內(nèi)外部服務(wù)的匯總、服務(wù)個(gè)性化定制以及針對(duì)計(jì)算機(jī)、手機(jī)、平板電腦等不同設(shè)備的顯示。實(shí)現(xiàn)技術(shù)可以采用JSF(JavaServerFaces),JSF提供了一種以組件為中心的用戶界面(UI)構(gòu)建方法,采用基于組件和事件驅(qū)動(dòng)的開發(fā)模式,為JavaWeb應(yīng)用程序開發(fā)帶來了極大的便利,使得開發(fā)人員可以專注于業(yè)務(wù)邏輯,加速Web應(yīng)用程序的構(gòu)建。
3結(jié)語
作為圖書館的主要依托單位,各高校應(yīng)該將最新的云計(jì)算技術(shù)應(yīng)用于數(shù)字圖書館或聯(lián)盟的建設(shè),構(gòu)建云服務(wù)平臺(tái),實(shí)現(xiàn)資源大范圍共享,減少重復(fù)建設(shè)。在經(jīng)費(fèi)有限的情況下,高??梢猿浞掷醚邪l(fā)人員優(yōu)勢(shì),自主建設(shè)云服務(wù)平臺(tái)。本文分析了高校對(duì)于云服務(wù)平臺(tái)的主要需求,提出了基于云計(jì)算的數(shù)字圖書館服務(wù)平臺(tái)架構(gòu)模型,詳細(xì)說明了架構(gòu)模型每層的構(gòu)成及功能,在研究主流開發(fā)技術(shù)的基礎(chǔ)上,介紹了架構(gòu)的實(shí)現(xiàn)技術(shù),選用的技術(shù)具有成熟度高、兼容性強(qiáng)、研發(fā)難度低等特點(diǎn),適合于快速構(gòu)建云服務(wù)平臺(tái),可以為今后的建設(shè)工作提供參考和借鑒。
20211119_61979e551b459__基于云計(jì)算的數(shù)字圖書館服務(wù)平臺(tái)架構(gòu)設(shè)計(jì)