王連備,范永弘,賁 進(jìn)
(信息工程大學(xué)測(cè)繪學(xué)院,河南鄭州 450052)
空間數(shù)據(jù)服務(wù)效率優(yōu)化策略
王連備,范永弘,賁 進(jìn)
(信息工程大學(xué)測(cè)繪學(xué)院,河南鄭州 450052)
分析了空間數(shù)據(jù)服務(wù)的特點(diǎn)和現(xiàn)狀,探討了提高數(shù)據(jù)傳輸效率的技術(shù)途徑,提出了基于Grid FTP集群的空間數(shù)據(jù)服務(wù)效率優(yōu)化策略,設(shè)計(jì)了基于動(dòng)態(tài)數(shù)據(jù)分塊和服務(wù)性能加權(quán)的負(fù)載均衡算法并開(kāi)展了相關(guān)實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,提出的優(yōu)化策略是可行、有效的,能夠顯著的改善大數(shù)據(jù)量空間數(shù)據(jù)集的傳輸效率。
空間數(shù)據(jù);數(shù)據(jù)服務(wù);傳輸效率;負(fù)載均衡;Grid FTP
空間數(shù)據(jù)具有海量的特征,這決定了空間數(shù)據(jù)是一種數(shù)據(jù)密集型和計(jì)算密集型的服務(wù),具有服務(wù)處理時(shí)間長(zhǎng),易形成并發(fā)等特點(diǎn)。在網(wǎng)絡(luò)環(huán)境下,如何提高海量空間數(shù)據(jù)的傳輸效率是構(gòu)建高效空間數(shù)據(jù)服務(wù)必須要研究解決的問(wèn)題[1,2]。
1.1 空間數(shù)據(jù)服務(wù)的技術(shù)實(shí)現(xiàn)形式
當(dāng)前,空間數(shù)據(jù)服務(wù)主要有 2種具體的技術(shù)實(shí)現(xiàn)形式:
一種是基于OGC標(biāo)準(zhǔn)建立的Web服務(wù),如WCS服務(wù)、WMS服務(wù)等。這類(lèi)服務(wù)基于Web Service技術(shù)實(shí)現(xiàn),采用 XML對(duì)空間數(shù)據(jù)進(jìn)行編碼和封裝,通過(guò)HTTP協(xié)議進(jìn)行數(shù)據(jù)傳輸。眾所周知,基于XML的數(shù)據(jù)編碼會(huì)導(dǎo)致實(shí)際需要傳輸?shù)臄?shù)據(jù)量增大[3],而且對(duì)XML的編解碼操作還需要耗費(fèi)大量的時(shí)間。因此,在傳輸遙感影像等大數(shù)據(jù)量數(shù)據(jù)集時(shí),這類(lèi)服務(wù)的數(shù)據(jù)傳輸效率較低。
另一種是采用FTP服務(wù),以文件下載的方式為用戶(hù)提供空間數(shù)據(jù)集。FTP(File Transfer Protocol,文件傳輸協(xié)議)是專(zhuān)門(mén)用于在網(wǎng)絡(luò)上不同節(jié)點(diǎn)之間傳輸數(shù)據(jù)文件的協(xié)議,具有簡(jiǎn)單、易于實(shí)現(xiàn)的特點(diǎn)。但標(biāo)準(zhǔn)FTP協(xié)議缺乏健壯的容錯(cuò)機(jī)制,在傳輸遙感影像等大數(shù)據(jù)量數(shù)據(jù)集時(shí),因所需時(shí)間較長(zhǎng)而極易產(chǎn)生由網(wǎng)絡(luò)故障導(dǎo)致的傳輸中斷,而數(shù)據(jù)集重傳將嚴(yán)重的降低傳輸效率。
1.2 優(yōu)化海量數(shù)據(jù)傳輸效率的技術(shù)途徑
Grid FTP協(xié)議是在標(biāo)準(zhǔn)FTP協(xié)議的基礎(chǔ)上,為實(shí)現(xiàn)海量數(shù)據(jù)集的高效交換擴(kuò)展而來(lái)的一種新型數(shù)據(jù)傳輸協(xié)議。該協(xié)議提供了并行傳輸、帶狀傳輸及可重啟傳輸?shù)刃滦蛿?shù)據(jù)傳輸機(jī)制[4,5]。
并行傳輸機(jī)制:該機(jī)制通過(guò)建立多個(gè)并行TCP流的方式來(lái)提高數(shù)據(jù)傳輸?shù)目値?。這種方式能夠充分提高服務(wù)節(jié)點(diǎn)的資源利用率,從而提高數(shù)據(jù)傳輸效率。
帶狀傳輸機(jī)制:該機(jī)制將同一個(gè)文件的不同部分分別存放在不同的Grid FTP服務(wù)器上,從而突破單臺(tái)服務(wù)器傳輸性能的限制,提高數(shù)據(jù)傳輸?shù)男省?/p>
可重啟傳輸機(jī)制:該機(jī)制將標(biāo)準(zhǔn)FTP的重傳協(xié)議擴(kuò)展到數(shù)據(jù)通道協(xié)議中,當(dāng)傳輸中斷時(shí),可重新建立連接并從數(shù)據(jù)中斷的位置開(kāi)始數(shù)據(jù)傳輸。
不難看出,相對(duì)于HTTP、標(biāo)準(zhǔn)FTP等經(jīng)典傳輸協(xié)議而言,Grid FTP協(xié)議在構(gòu)建高效數(shù)據(jù)傳輸服務(wù)方面具有較大的技術(shù)優(yōu)勢(shì)。
此外,多用戶(hù)并發(fā)訪(fǎng)問(wèn)將大大增加對(duì)數(shù)據(jù)服務(wù)節(jié)點(diǎn)處理能力的要求。集群服務(wù)技術(shù)則是應(yīng)對(duì)這一問(wèn)題的有效舉措[6,7]。
基于以上討論,本文根據(jù)空間數(shù)據(jù)服務(wù)的特點(diǎn)和要求,綜合Grid FTP協(xié)議和負(fù)載均衡技術(shù),提出了一種基于Grid FTP集群的空間數(shù)據(jù)服務(wù)效率優(yōu)化策略。
該策略的基本思想是利用Grid FTP協(xié)議帶狀數(shù)據(jù)傳輸?shù)奶匦詷?gòu)建Grid FTP服務(wù)集群,將待傳輸?shù)臄?shù)據(jù)分配到集群內(nèi)所有尚未滿(mǎn)載的Grid FTP服務(wù)器上,讓當(dāng)前所有服務(wù)節(jié)點(diǎn)上的空閑資源都參與服務(wù),且由當(dāng)前傳輸性能優(yōu)良的節(jié)點(diǎn)負(fù)責(zé)傳輸較多的數(shù)據(jù)。
1)動(dòng)態(tài)數(shù)據(jù)分塊和服務(wù)性能加權(quán)的負(fù)載均衡算法。基于上述策略,本文將服務(wù)節(jié)點(diǎn)選擇、數(shù)據(jù)分塊和分配等問(wèn)題統(tǒng)一起來(lái)考慮,設(shè)計(jì)了動(dòng)態(tài)數(shù)據(jù)分塊和服務(wù)性能加權(quán)的負(fù)載均衡算法。該算法主要包括以下步驟:
(1)評(píng)估集群中各服務(wù)節(jié)點(diǎn)的性能,計(jì)算各節(jié)點(diǎn)的性能權(quán)值。服務(wù)節(jié)點(diǎn)的性能可以采用最大并發(fā)數(shù)、最高傳輸速率及當(dāng)前負(fù)載等多個(gè)指標(biāo)進(jìn)行綜合評(píng)價(jià)。而對(duì)于本文所研究的問(wèn)題而言,需重點(diǎn)關(guān)注是反映各節(jié)點(diǎn)當(dāng)前數(shù)據(jù)傳輸性能的指標(biāo)。因此,本文采用當(dāng)前可提供數(shù)據(jù)傳輸速率作為反映節(jié)點(diǎn)性能的評(píng)價(jià)指標(biāo),并依據(jù)這一指標(biāo)來(lái)計(jì)算各節(jié)點(diǎn)的性能權(quán)值。
記節(jié)點(diǎn) I當(dāng)前可提供數(shù)據(jù)傳輸速率為Vi,最大數(shù)據(jù)傳輸速率為MVi,當(dāng)前數(shù)據(jù)傳輸速率為CVi,則有:
即節(jié)點(diǎn)當(dāng)前可提供數(shù)據(jù)傳輸速率的取值為該節(jié)點(diǎn)最大數(shù)據(jù)傳輸速率與當(dāng)前數(shù)據(jù)傳輸速率之差。其中MVi反映了服務(wù)節(jié)點(diǎn)固有的網(wǎng)絡(luò)傳輸性能,可通過(guò)理論計(jì)算或?qū)崪y(cè)得到;CVi可通過(guò)動(dòng)態(tài)檢測(cè)服務(wù)節(jié)點(diǎn)的網(wǎng)絡(luò)流量而得到。
本文基于“占比”的規(guī)則將節(jié)點(diǎn)當(dāng)前可提供數(shù)據(jù)傳輸速率量化為其性能權(quán)值,記節(jié)點(diǎn)I當(dāng)前性能權(quán)值為Pi,則有:
式中,n為服務(wù)集群中參與本次數(shù)據(jù)傳輸?shù)墓?jié)點(diǎn)個(gè)數(shù)(也即服務(wù)集群中未滿(mǎn)載的節(jié)點(diǎn)個(gè)數(shù))。
(2)根據(jù)各服務(wù)節(jié)點(diǎn)性能權(quán)值的大小比例來(lái)動(dòng)態(tài)分配待傳輸?shù)臄?shù)據(jù)塊。設(shè)待傳輸?shù)臄?shù)據(jù)大小為 M,集群中有 n個(gè)節(jié)點(diǎn)參與傳輸,分配給該節(jié)點(diǎn)的數(shù)據(jù)塊大小為Mi,則Mi按如下公式計(jì)算:
2)動(dòng)態(tài)數(shù)據(jù)分塊和服務(wù)性能加權(quán)的負(fù)載均衡算法特點(diǎn)分析。傳統(tǒng)的負(fù)載均衡算法是將任務(wù)整體分配給當(dāng)前負(fù)載最輕的服務(wù)節(jié)點(diǎn),在多用戶(hù)并發(fā)時(shí),形成一臺(tái)服務(wù)器對(duì)多個(gè)客戶(hù)端的格局[8],如圖1(a)所示;而本文設(shè)計(jì)的負(fù)載均衡算法利用了Grid FTP帶狀數(shù)據(jù)傳輸機(jī)制提供多個(gè)服務(wù)節(jié)點(diǎn)同時(shí)為一個(gè)客戶(hù)端提供數(shù)據(jù)服務(wù)。在多用戶(hù)并發(fā)時(shí),形成多臺(tái)服務(wù)器對(duì)多個(gè)客戶(hù)端進(jìn)行并行數(shù)據(jù)傳輸?shù)母窬?,如圖 1(b)所示;而且算法通過(guò)性能加權(quán)的數(shù)據(jù)分塊策略為傳輸性能好的節(jié)點(diǎn)分配了較多的數(shù)據(jù),從而能夠在整體上提高集群資源的利用率,縮短傳輸大數(shù)據(jù)量數(shù)據(jù)所需的時(shí)間,提高數(shù)據(jù)傳輸效率。
3)基于Grid FTP集群的空間數(shù)據(jù)服務(wù)實(shí)現(xiàn)模式。基于上述優(yōu)化策略,本文設(shè)計(jì)了基于Grid FTP集群的空間數(shù)據(jù)服務(wù)網(wǎng)關(guān),其構(gòu)成如圖2所示。
圖1 動(dòng)態(tài)數(shù)據(jù)分塊和服務(wù)性能加權(quán)的負(fù)載調(diào)度算法與傳統(tǒng)算法的對(duì)比
圖2 基于Grid FTP集群的數(shù)據(jù)網(wǎng)關(guān)架構(gòu)
網(wǎng)關(guān)的核心構(gòu)成是數(shù)據(jù)傳輸服務(wù)集群和負(fù)載調(diào)度模塊。數(shù)據(jù)傳輸服務(wù)集群提供了構(gòu)建高速數(shù)據(jù)傳輸服務(wù)的基礎(chǔ)設(shè)施,而負(fù)載調(diào)度模塊則實(shí)現(xiàn)了動(dòng)態(tài)數(shù)據(jù)分塊和服務(wù)性能加權(quán)的負(fù)載均衡算法。基于該數(shù)據(jù)網(wǎng)關(guān)的數(shù)據(jù)服務(wù)實(shí)現(xiàn)機(jī)制為:
(1)客戶(hù)端向數(shù)據(jù)網(wǎng)關(guān)的接口模塊發(fā)送數(shù)據(jù)請(qǐng)求;
(2)接口模塊解析數(shù)據(jù)請(qǐng)求參數(shù)并將參數(shù)傳遞給數(shù)據(jù)提取模塊;
(3)數(shù)據(jù)提取模塊根據(jù)數(shù)據(jù)請(qǐng)求參數(shù)從本地?cái)?shù)據(jù)管理系統(tǒng)中提取數(shù)據(jù),并將數(shù)據(jù)直接傳遞給數(shù)據(jù)封裝模塊;同時(shí)將數(shù)據(jù)量大小信息傳送給負(fù)載調(diào)度模塊;
(4)負(fù)載調(diào)度模塊根據(jù)待傳輸?shù)臄?shù)據(jù)大小和集群中各服務(wù)節(jié)點(diǎn)的當(dāng)前性能運(yùn)用負(fù)載均衡算法生成并行數(shù)據(jù)傳輸方案;并將傳輸方案編碼為XML文檔,隨響應(yīng)消息返回給客戶(hù)端;
(5)客戶(hù)端根據(jù)傳輸方案向數(shù)據(jù)傳輸服務(wù)節(jié)點(diǎn)發(fā)起數(shù)據(jù)請(qǐng)求,基于Grid FTP協(xié)議獲取數(shù)據(jù)。
為驗(yàn)證基于動(dòng)態(tài)數(shù)據(jù)分塊和服務(wù)性能加權(quán)的負(fù)載均衡算法在優(yōu)化數(shù)據(jù)傳輸效率方面的實(shí)際效果,本文采用傳統(tǒng)的動(dòng)態(tài)性能加權(quán)輪轉(zhuǎn)算法和本文所設(shè)計(jì)算法分別進(jìn)行數(shù)據(jù)傳輸實(shí)驗(yàn),對(duì)比分析 2種算法的實(shí)際傳輸效率。
3.1 實(shí)驗(yàn)環(huán)境
實(shí)驗(yàn)在互聯(lián)網(wǎng)環(huán)境下進(jìn)行,采用1臺(tái)PC機(jī)作為客戶(hù)端,百兆接入互聯(lián)網(wǎng);3臺(tái)數(shù)據(jù)服務(wù)器配置為服務(wù)集群,千兆接入互聯(lián)網(wǎng);各節(jié)點(diǎn)計(jì)算機(jī)的軟硬件配置如表1所示。
表1 節(jié)點(diǎn)計(jì)算機(jī)的軟硬件配置
實(shí)驗(yàn)采用的數(shù)據(jù)為大小不同的6個(gè) TIF格式的影像數(shù)據(jù)文件,如表 2所示。實(shí)驗(yàn)前所有文件均已部署至各數(shù)據(jù)服務(wù)節(jié)點(diǎn)。
表2 實(shí)驗(yàn)數(shù)據(jù)說(shuō)明
3.2 實(shí)驗(yàn)過(guò)程及結(jié)果分析
本文首先采用傳統(tǒng)的性能加權(quán)輪轉(zhuǎn)算法和本文所設(shè)計(jì)的基于動(dòng)態(tài)數(shù)據(jù)分塊和服務(wù)性能加權(quán)的負(fù)載均衡算法分別進(jìn)行了從客戶(hù)端向服務(wù)集群請(qǐng)求 Datafile3的實(shí)驗(yàn),對(duì)比觀(guān)察 2種算法在節(jié)點(diǎn)數(shù)據(jù)分配和傳輸耗時(shí)方面的情況。
實(shí)驗(yàn)時(shí)采用工具軟件將2號(hào)和3號(hào)服務(wù)節(jié)點(diǎn)的當(dāng)前可用帶寬限定為其總帶寬的50%,即模擬其當(dāng)前負(fù)載為50%,1號(hào)服務(wù)節(jié)點(diǎn)為空載。采用2種算法分別進(jìn)行10次實(shí)驗(yàn)取平均值,結(jié)果如表3和圖3所示。
表3 實(shí)驗(yàn)結(jié)果
從實(shí)驗(yàn)結(jié)果可知,本文所設(shè)計(jì)算法的傳輸效率要優(yōu)于傳統(tǒng)的算法,原因是該算法利用了集群中所有可以利用的服務(wù)節(jié)點(diǎn)資源,因而具有較高的傳輸效率??梢酝普?,集群中未達(dá)到滿(mǎn)載的服務(wù)節(jié)點(diǎn)數(shù)越多,則算法的優(yōu)勢(shì)越明顯;并發(fā)用戶(hù)數(shù)越多,集群中各節(jié)點(diǎn)負(fù)載越大(各節(jié)點(diǎn)負(fù)載相對(duì)較均衡,但均未達(dá)到滿(mǎn)載的情況下),算法的優(yōu)勢(shì)就越明顯。
圖3 數(shù)據(jù)傳輸效率對(duì)比
此外,為比對(duì)分析不同大小數(shù)據(jù)量情況下 2種算法的傳輸效率,本文利用表 2所列的其他實(shí)驗(yàn)數(shù)據(jù)分別重復(fù)進(jìn)行了上述實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表4和圖4所示。
表4 實(shí)驗(yàn)結(jié)果
圖4 傳輸不同大小數(shù)據(jù)時(shí)的效率對(duì)比
實(shí)驗(yàn)結(jié)果表明,傳輸?shù)臄?shù)據(jù)量越大,算法在數(shù)據(jù)傳輸效率方面的優(yōu)勢(shì)就越明顯。
實(shí)驗(yàn)結(jié)果表明,本文所提出的基于Grid FTP集群的空間數(shù)據(jù)服務(wù)效率優(yōu)化策略是可行和有效的。相對(duì)于傳統(tǒng)的算法而言,該算法能夠顯著改善傳輸大數(shù)據(jù)量數(shù)據(jù)時(shí)的傳輸效率。
實(shí)驗(yàn)中也發(fā)現(xiàn)了算法的不足,其缺陷在于該算法僅在傳輸前計(jì)算各服務(wù)節(jié)點(diǎn)的當(dāng)前性能權(quán)重并一次性分配數(shù)據(jù)塊大小,分配后在傳輸?shù)倪^(guò)程中不再改變,因此不能適應(yīng)數(shù)據(jù)傳輸過(guò)程中各節(jié)點(diǎn)性能動(dòng)態(tài)變化的情況。
一種改進(jìn)的策略是將待傳輸?shù)臄?shù)據(jù)分為若干個(gè)等大小的數(shù)據(jù)塊,分多次動(dòng)態(tài)地將數(shù)據(jù)塊分配至集群中未滿(mǎn)載的服務(wù)節(jié)點(diǎn)。但對(duì)于所劃分?jǐn)?shù)據(jù)塊的大小、服務(wù)節(jié)點(diǎn)性能參數(shù)的采集周期等問(wèn)題都需要開(kāi)展進(jìn)一步的研究,這將是本文下一步的研究方向。
[1] 朱欣焰.面向網(wǎng)絡(luò)的海量影像空間數(shù)據(jù)在線(xiàn)分發(fā)技術(shù)[J].武漢大學(xué)學(xué)報(bào):信息科學(xué)版,2003, 28(3):288-293
[2] 朱江,張立立,曾志明,等.海量影像數(shù)據(jù)的發(fā)布集群系統(tǒng)與應(yīng)用[J].地球信息科學(xué),2006(2).
[3] 王立,邸瑞華.應(yīng)用Web服務(wù)實(shí)現(xiàn)遠(yuǎn)程教育平臺(tái)間數(shù)據(jù)傳輸[J].通訊和計(jì)算機(jī),2006,3(4):57-60
[4] 汪萌.基于Globus存儲(chǔ)網(wǎng)格傳輸服務(wù)的研究與實(shí)現(xiàn)[D].北京:北京交通大學(xué),2008
[5] Ian Foster.The Grid:A New Infrastructure for 21stCentury Science[J].Physics Today,2002,55(2):42-47
[6] V Carclellini,M Colajanni,PSYu.Dynamic Load Balancing on Web-Server Systems[J].IEEE InternetComputing 1999,28-39
[7] 陳登偉,魯智勇.網(wǎng)絡(luò)動(dòng)態(tài)負(fù)載均衡算法分析[J].現(xiàn)代電子技術(shù).2003(21):81-84
[8] 古俐明.集群服務(wù)器負(fù)載均衡技術(shù)研究[J].微計(jì)算機(jī)信息, 2007,23(12):112-113
Research on Efficiency Improving for Spatial Data Service
by WANG Lianbei
Based on the present situation and characteristic of spatial data service technologies,technological approaches for efficiency improving were discussed in this paper.The efficiency improving strategy was presented based on Grid FTP Services.A load balancing algorithms which distributed data block onto nodes in data service cluster according to their current performance was designed and applied on spatial data service experiment.The result demonstrated that the efficiency improving strategy presented in this paper can improve the efficiency of data distributing.
spatial data,data service,distributing efficiency,load balancing,Grid FTP (Page:32)
P208
B
1672-4623(2011)02-0032-03
2010-03-25
項(xiàng)目來(lái)源:國(guó)家863計(jì)劃資助項(xiàng)目(2009AA12Z218)。
王連備,博士,研究方向?yàn)橛跋窨臻g信息系統(tǒng)。