摘要:介紹了幾種國外主流網(wǎng)格模擬器,并詳細(xì)分析了OptorSim的功能模塊與系統(tǒng)特性。根據(jù)OptorSim的系統(tǒng)結(jié)構(gòu),提出基于訪問頻率的副本創(chuàng)建算法,擴(kuò)展了Optor優(yōu)化算法的類,并通過網(wǎng)格模擬器OptorSim測試了新算法的效率。
關(guān)鍵詞:網(wǎng)格;副本優(yōu)化;OptorSim
中圖分類號:TP3 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-9599 (2012) 17-0000-02
1 網(wǎng)格模擬器OptorSim的體系結(jié)構(gòu)
1.1 OptorSim的體系結(jié)構(gòu)。OptorSim是一個用Java編寫的數(shù)據(jù)網(wǎng)格[1]模擬器,設(shè)計(jì)OptorSim[1]的一個主要考慮是盡可能真實(shí)地模擬一個數(shù)據(jù)網(wǎng)格中各個部分之間的相互作用,因此,OptorSim體系結(jié)構(gòu)[2]采用了簡化的EDG體系結(jié)構(gòu),它包括了所有必須的部件,但是重點(diǎn)是在數(shù)據(jù)管理的副本機(jī)制上,其目的是研究在某一特定環(huán)境下副本優(yōu)化算法的有效性。圖1-1顯示了OptorSim的體系結(jié)構(gòu)。
1.2 OptorSim的內(nèi)部結(jié)構(gòu)。在模擬器中,每一個CE由一個線程代表。作業(yè)提交給CE是由另一個RB線程管理。當(dāng)RB發(fā)現(xiàn)存在空閑的計(jì)算元時,它就根據(jù)CE運(yùn)行作業(yè)的規(guī)則(如這個CE運(yùn)行作業(yè)的類型,運(yùn)行每個作業(yè)的時間間隔等)為其選擇一個作業(yè)運(yùn)行。
2 Optorsim的系統(tǒng)特征
2.1 配置模擬器參數(shù):OptorSim提供了較強(qiáng)大的數(shù)據(jù)輸入功能,用來實(shí)現(xiàn)各種實(shí)驗(yàn)用例的定制功能。OptorSim的輸入是三個配置文件:網(wǎng)格配置文件(Grid Configuration File)、作業(yè)配置文件(Job Configuration File)和模擬參數(shù)。
2.2 數(shù)據(jù)統(tǒng)計(jì)功能:OptorSim便提供了非常強(qiáng)大的數(shù)據(jù)統(tǒng)計(jì)和圖形顯示功能。它提供了各種執(zhí)行期的統(tǒng)計(jì)數(shù)據(jù),為仿真實(shí)驗(yàn)結(jié)果分析提供了很大的方便。
2.3 副本優(yōu)化算法:OptorSim的optor包里提供給了優(yōu)化算法可供使用[3]。最近最久未使用副本算法(LRU)、最不經(jīng)常使用副本算法(LFU)、二項(xiàng)式預(yù)言函數(shù)副本算法等。在使用現(xiàn)有的算法是,只需在參數(shù)配置文件中更改“optimiser=value“的值。
2.4 模塊化設(shè)計(jì):OptorSim本身采用不同的副本優(yōu)化策略,實(shí)現(xiàn)了幾個不同的副本優(yōu)化器,主要包括:SkelOptor模塊、SimpleOptimiser模塊、LfuOptimiser模塊、ReplicatingOptimiser模塊、LruOptimiser模塊。
3 OptorSim的配置
安裝Jdk、Ant和Optorsim并將環(huán)境變量設(shè)置完后,進(jìn)行測試。在c:\optorsim-2.0\后輸入bin\OptorSim.bat,按回車鍵。若參數(shù)文件里的gui=yes,則直接進(jìn)入Optorsim的圖形界面,如圖3-1所示:
3.1 Optorsim的改進(jìn)與擴(kuò)展。在Optorsim模擬器中可以使用現(xiàn)有的各種副本優(yōu)化策略,也可以添加新的優(yōu)化策略。對副本模型進(jìn)行優(yōu)化,需要考慮所在網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)以及節(jié)點(diǎn)的各種性能等等因素。模擬器中現(xiàn)有的算法已經(jīng)不能滿足復(fù)雜現(xiàn)實(shí)的需要,因此,我們可以擴(kuò)展Optorsim模塊,創(chuàng)建新的副本優(yōu)化算法。
基于訪問頻率的副本創(chuàng)建算法[4](Base on Access Frequency)就是為減少數(shù)據(jù)訪問時間,平衡數(shù)據(jù)節(jié)點(diǎn)之間的負(fù)載,并且通過維護(hù)數(shù)據(jù)的多個副本來提供容錯性的目的而提出的副本創(chuàng)建算法。其主要思想是:當(dāng)副本的訪問頻率值達(dá)到閾值,就在訪問該副本的節(jié)點(diǎn)創(chuàng)建副本,否則采用遠(yuǎn)程讀?。划?dāng)節(jié)點(diǎn)的存儲空間不足時,會根據(jù)訪問頻率值,將取值最小的副本刪除。
3.2 測試過程與結(jié)果。第一:在參數(shù)配置文件中添加BAFOptimiser類,并使optimiser=6.如圖4-3-1所示:
第二:在optor包中添加BAFOptorSim和BAFStorageElement類,并使用ant編譯built.xml。圖4-3-2顯示出所添加的BAFOptorSim類(同理可添加BAFStorageElement類):
圖4-3-2 添加BAFOptorSim類
第三:測試結(jié)果:將BAF算法與Optorsim自帶的算法LFU進(jìn)行多次測試并比較,得到結(jié)果如表1所示:
4 小結(jié)
本文采用添加的BAF算法進(jìn)行模擬測試。在使用過程中發(fā)現(xiàn),我們可以利用OptorSim模擬器是開源、免費(fèi)的特點(diǎn)根據(jù)自己的需要再對它進(jìn)行擴(kuò)展,這一特點(diǎn)將非常有利于網(wǎng)格研究者對副本優(yōu)化模型的研究工作。
參考文獻(xiàn)
[1]桂小林.網(wǎng)格技術(shù)導(dǎo)論[M].北京:北京郵電大學(xué)出版社,2005,1.
[2]戴曉露,尹建偉.基于p2p的廣域存儲系統(tǒng)中副本管理相關(guān)問題的研究[J].2007,14.
[3]孫海燕,王曉東,周斌,賈焰,王懷民,鄒鵬.給予存儲聯(lián)盟的雙層動態(tài)副本創(chuàng)建策略-SADDRES[J].電子學(xué)報,2005,7.
[4]張瑞藜,王夙娟.基于訪問頻率的網(wǎng)格副本創(chuàng)建策略[J].計(jì)算機(jī)時代,2011,6.