分布式存儲(chǔ)系統(tǒng)需要完善的數(shù)據(jù)副本創(chuàng)建、部署、選擇、定位和一致性管理機(jī)制以保證分布式計(jì)算環(huán)境中的數(shù)據(jù)安全、可用、可靠、可擴(kuò)展性和服務(wù)的高效、連續(xù)性。文中全面分析與研究了國(guó)內(nèi)外對(duì)分布式存儲(chǔ)系統(tǒng)中的副本管理機(jī)制研究現(xiàn)狀,重點(diǎn)對(duì)副本創(chuàng)建、副本定位、副本一致性維護(hù)和副本撤銷機(jī)制進(jìn)行深入的研究,并從數(shù)據(jù)可用性、節(jié)點(diǎn)負(fù)載均衡、數(shù)據(jù)一致性和帶寬消耗等性能指標(biāo)進(jìn)行了分析。文中的研究成果對(duì)于分布式存儲(chǔ)系統(tǒng)的合理設(shè)計(jì)與構(gòu)建具有良好的參考價(jià)值。
分布式存儲(chǔ)系統(tǒng)(Distributed Storage Systems)是基于存儲(chǔ)服務(wù)器集群(Cluster)和分布式文件系統(tǒng),將網(wǎng)絡(luò)中大量各種不同類型的存儲(chǔ)設(shè)備通過(guò)應(yīng)用軟件集合起來(lái)協(xié)同工作,并通過(guò)各種相應(yīng)的應(yīng)用軟件或應(yīng)用接口,共同為用戶提供高可用、高可靠的數(shù)據(jù)存儲(chǔ)和業(yè)務(wù)訪問(wèn)功能的存儲(chǔ)資源系統(tǒng)。為了保證數(shù)據(jù)安全、可用、可靠、可擴(kuò)展性和服務(wù)的高效、連續(xù)性,分布式存儲(chǔ)系統(tǒng)需要完善的數(shù)據(jù)多副本創(chuàng)建、部署、選擇、定位和一致性管理機(jī)制。隨著互聯(lián)網(wǎng)中的用戶對(duì)資源的需求量日益增多,如果僅有一份數(shù)據(jù),則需要該數(shù)據(jù)的用戶都須到同一個(gè)節(jié)點(diǎn)上讀取它,網(wǎng)絡(luò)容易出現(xiàn)擁塞,而處理能力有限的節(jié)點(diǎn)也會(huì)因?yàn)樵L問(wèn)數(shù)量太大而宕機(jī)。然而,創(chuàng)建多份數(shù)據(jù)副本,并將它們合理分布在多個(gè)服務(wù)器節(jié)點(diǎn)上,分擔(dān)處理訪問(wèn)請(qǐng)求的任務(wù),可以有效降低節(jié)點(diǎn)失效率,減少用戶響應(yīng)時(shí)間。
文中詳細(xì)分析了目前國(guó)內(nèi)外對(duì)分布式存儲(chǔ)系統(tǒng)中的副本管理機(jī)制研究現(xiàn)狀,重點(diǎn)對(duì)副本創(chuàng)建、副本定位、副本一致性維護(hù)和副本撤銷機(jī)制進(jìn)行深入的研究,并從數(shù)據(jù)可用性、節(jié)點(diǎn)負(fù)載均衡、數(shù)據(jù)一致性和帶寬消耗等性能指標(biāo)進(jìn)行了系統(tǒng)的分析。
1.副本創(chuàng)建
某一節(jié)點(diǎn)上的數(shù)據(jù)被頻繁訪問(wèn)使得該服務(wù)器節(jié)點(diǎn)負(fù)載過(guò)重時(shí),或出于提高可靠性的考慮時(shí),可將數(shù)據(jù)復(fù)制一份或多份副本并存儲(chǔ)到其它節(jié)點(diǎn)上。
1.1 副本數(shù)量的設(shè)置
副本數(shù)量對(duì)分布式存儲(chǔ)系統(tǒng)的可用性的影響很大,創(chuàng)建太少容易產(chǎn)生數(shù)據(jù)熱點(diǎn)問(wèn)題,延長(zhǎng)訪問(wèn)時(shí)間,太多則會(huì)造成無(wú)謂的存儲(chǔ)空間浪費(fèi)。很多存儲(chǔ)系統(tǒng)復(fù)制的默認(rèn)數(shù)據(jù)副本數(shù)是3份,即在數(shù)據(jù)投入使用時(shí)復(fù)制3份它的副本,之后根據(jù)具體情況來(lái)創(chuàng)建和撤銷副本。
文獻(xiàn)根據(jù)副本復(fù)制的數(shù)量可將副本復(fù)制方法分為3種:均勻復(fù)制,所有數(shù)據(jù)對(duì)象復(fù)制相同數(shù)量的副本;比例復(fù)制,復(fù)制數(shù)量與被訪問(wèn)頻率成正比;方根復(fù)制,復(fù)制數(shù)量與被訪問(wèn)頻率的方根成正比。方根復(fù)制在平均查詢距離和副本利用率方面具有較理想的性能表現(xiàn)。文獻(xiàn)經(jīng)模擬實(shí)驗(yàn)得出當(dāng)副本的生命周期較長(zhǎng)和副本密度較高時(shí)更能體現(xiàn)方根復(fù)制方法的優(yōu)勢(shì)。雖然副本復(fù)制的數(shù)量一般被認(rèn)為應(yīng)該正比于原數(shù)據(jù)大小的平方根,而文獻(xiàn)的研究結(jié)論表明,副本復(fù)制的數(shù)量應(yīng)該反比于原數(shù)據(jù)大小的平方根。
1.2 副本復(fù)制策略
副本復(fù)制策略分為路徑復(fù)制、源請(qǐng)求復(fù)制、鄰居節(jié)點(diǎn)復(fù)制、隨機(jī)復(fù)制和優(yōu)先級(jí)復(fù)制五種:
(1)路徑復(fù)制。發(fā)送副本給請(qǐng)求路徑上的所有節(jié)點(diǎn)。優(yōu)點(diǎn)是實(shí)現(xiàn)原理簡(jiǎn)單,方便數(shù)據(jù)的查找;缺點(diǎn)是創(chuàng)建的副本數(shù)量供過(guò)于求,且增加了副本的一致性維護(hù)的開(kāi)銷。
(2)源請(qǐng)求復(fù)制。只發(fā)送副本給請(qǐng)求節(jié)點(diǎn)。LAR(Lightweight Adaptive Replication,輕量級(jí)自適應(yīng)的復(fù)制方法)算法是美國(guó)馬里蘭大學(xué)研究人員提出的經(jīng)典源請(qǐng)求復(fù)制算法,其主要思想是:當(dāng)訪問(wèn)請(qǐng)求到達(dá)目的節(jié)點(diǎn)時(shí),若目標(biāo)節(jié)點(diǎn)未過(guò)載,則能讀取數(shù)據(jù),若目標(biāo)節(jié)點(diǎn)處理能力不夠,將創(chuàng)建一份新副本,而且如果請(qǐng)求節(jié)點(diǎn)未過(guò)載,才把新創(chuàng)建副本發(fā)給該請(qǐng)求節(jié)點(diǎn),并告知請(qǐng)求路徑上所有節(jié)點(diǎn)該請(qǐng)求節(jié)點(diǎn)上也有該數(shù)據(jù)副本。優(yōu)點(diǎn)是對(duì)于目的節(jié)點(diǎn)來(lái)說(shuō),減少了副本的復(fù)制數(shù)量;缺點(diǎn)是請(qǐng)求路徑上有該副本且達(dá)到復(fù)制閾值的節(jié)點(diǎn)都存一份副本到請(qǐng)求節(jié)點(diǎn)上,易造成請(qǐng)求節(jié)點(diǎn)過(guò)載。
(3)鄰居節(jié)點(diǎn)復(fù)制。對(duì)網(wǎng)絡(luò)數(shù)據(jù)都保存訪問(wèn)歷史記錄,節(jié)點(diǎn)將被頻繁訪問(wèn)的副本新建一份發(fā)送給頻繁請(qǐng)求的節(jié)點(diǎn)的鄰節(jié)點(diǎn),當(dāng)請(qǐng)求節(jié)點(diǎn)再次訪問(wèn)該數(shù)據(jù)時(shí),可以到其鄰居節(jié)點(diǎn)直接讀取數(shù)據(jù)了,從而減少了請(qǐng)求的跳數(shù)。該方法缺點(diǎn)在于歷史記錄預(yù)測(cè)會(huì)有一定概率的失誤。
(4)隨機(jī)復(fù)制。隨機(jī)選擇一個(gè)或多個(gè)節(jié)點(diǎn)來(lái)存放副本,有隨機(jī)選擇的對(duì)象是請(qǐng)求路徑上的節(jié)點(diǎn)和整個(gè)網(wǎng)絡(luò)的節(jié)點(diǎn)兩種策略,后者主要運(yùn)用多哈希函數(shù)和關(guān)聯(lián)哈希兩種方法。多哈希函數(shù)的優(yōu)點(diǎn)是可以動(dòng)態(tài)調(diào)整副本的數(shù)目;副本被高度分散了,有益于負(fù)載均衡;缺點(diǎn)是管理多個(gè)哈希函數(shù)是個(gè)復(fù)雜的工作。關(guān)聯(lián)哈希的優(yōu)點(diǎn)是明顯減少了訪問(wèn)時(shí)延;缺點(diǎn)是產(chǎn)生較大的副本數(shù)量和系統(tǒng)開(kāi)銷。
(5)優(yōu)先級(jí)復(fù)制。請(qǐng)求發(fā)生就向已經(jīng)有副本的節(jié)點(diǎn)發(fā)送所需副本,直至飽和,再選擇別的節(jié)點(diǎn)來(lái)存儲(chǔ)副本。優(yōu)點(diǎn)是減少了存放副本的節(jié)點(diǎn)數(shù),減低了節(jié)點(diǎn)的維護(hù)開(kāi)銷;缺點(diǎn)是存放副本的節(jié)點(diǎn)易過(guò)載,容易出現(xiàn)新一輪的訪問(wèn)熱點(diǎn)問(wèn)題。
通過(guò)比較這5種副本分布方法,可以發(fā)現(xiàn)路徑復(fù)制和優(yōu)先級(jí)復(fù)制方法不夠靈活、效率相對(duì)較低,其它3種方法可以在大多數(shù)分布式網(wǎng)絡(luò)環(huán)境下使用并能解決熱點(diǎn)問(wèn)題。
1.3 典型副本分布方法
文獻(xiàn)提出了一種漸進(jìn)優(yōu)化的選舉和分區(qū)合并算法來(lái)存儲(chǔ)多個(gè)副本,以求得目標(biāo)區(qū)域中的最佳存儲(chǔ)節(jié)點(diǎn)。方法假設(shè)要存儲(chǔ)n個(gè)副本,先將拓?fù)浣Y(jié)構(gòu)劃分為多個(gè)區(qū)域,每個(gè)區(qū)域都有一個(gè)服務(wù)節(jié)點(diǎn),即該區(qū)域內(nèi)最適合放置副本的節(jié)點(diǎn),然后根據(jù)選舉法,選舉過(guò)程中,考慮了客戶的分布情況、訪問(wèn)頻率、通信時(shí)延和節(jié)點(diǎn)的處理能力四個(gè)因素,每次淘汰一個(gè)區(qū)域,并有調(diào)整剩余區(qū)域的環(huán)節(jié),經(jīng)過(guò)多次的選舉淘汰區(qū)域調(diào)整,最終將整個(gè)網(wǎng)格劃分為n個(gè)區(qū)域,這n個(gè)區(qū)域的服務(wù)節(jié)點(diǎn)就是最佳存儲(chǔ)節(jié)點(diǎn)。
文獻(xiàn)提出一種網(wǎng)格環(huán)境下的多副本后向預(yù)測(cè)調(diào)度的算法。方法與鄰居節(jié)點(diǎn)復(fù)制策略有些相似,也是根據(jù)已收集的歷史數(shù)據(jù)來(lái)預(yù)測(cè)合適的存儲(chǔ)節(jié)點(diǎn),不同的是在發(fā)生負(fù)載失衡情況之前將副本直接存儲(chǔ)到選出的節(jié)點(diǎn)而不是它們的鄰居節(jié)點(diǎn)。
1.4 數(shù)據(jù)遷移方法
網(wǎng)絡(luò)系統(tǒng)的一個(gè)重點(diǎn)問(wèn)題是如何實(shí)現(xiàn)負(fù)載均衡,通過(guò)新副本的添加或撤銷能達(dá)到這一目的,另外一種常用的方法則是數(shù)據(jù)遷移。虛擬節(jié)點(diǎn)技術(shù)的核心思想就是數(shù)據(jù)遷移。數(shù)據(jù)虛擬節(jié)點(diǎn)是存儲(chǔ)數(shù)據(jù)文件、路由定位的基本單元,一個(gè)物理節(jié)點(diǎn)可管理多個(gè)虛擬節(jié)點(diǎn)。若一個(gè)物理節(jié)點(diǎn)過(guò)載,則將其管理的部分虛擬節(jié)點(diǎn)轉(zhuǎn)移給其它物理節(jié)點(diǎn)管理,數(shù)據(jù)將隨之轉(zhuǎn)移。
虛擬節(jié)點(diǎn)技術(shù)有一對(duì)一、一對(duì)多和多對(duì)多這三種策略。虛擬節(jié)點(diǎn)策略的缺點(diǎn)在于實(shí)現(xiàn)復(fù)雜。由于復(fù)制技術(shù)本身已包含分布策略,且虛擬節(jié)點(diǎn)技術(shù)必須是在擁有足夠數(shù)量的副本才能實(shí)現(xiàn),所以虛擬節(jié)點(diǎn)技術(shù)更適合于與復(fù)制技術(shù)結(jié)合使用。
2.副本定位
節(jié)點(diǎn)訪問(wèn)數(shù)據(jù)性能表現(xiàn)的優(yōu)劣很大程度上受到數(shù)據(jù)定位策略的影響,即如何快速定位出目標(biāo)數(shù)據(jù)所在節(jié)點(diǎn)的位置,然后讀取數(shù)據(jù)。
傳統(tǒng)的基于覆蓋網(wǎng)(Overlay network)的副本定位算法雖然在不同程度上解決了副本定位效率、負(fù)載均衡和可擴(kuò)展性等問(wèn)題,但目標(biāo)節(jié)點(diǎn)不能很好地滿足特定應(yīng)用的服務(wù)質(zhì)量需求 。文獻(xiàn)提出一種多維度服務(wù)質(zhì)量約束的副本定位方法,通過(guò)采用分層和對(duì)等的混合定位機(jī)制,在高效定位的同時(shí),還保證目標(biāo)節(jié)點(diǎn)提供有效的服務(wù)質(zhì)量。方法基于區(qū)域內(nèi)分層、區(qū)域間對(duì)等的覆蓋網(wǎng)拓?fù)浣Y(jié)構(gòu),運(yùn)用了區(qū)間路由算法、副本信息發(fā)布算法、站內(nèi)副本算法、區(qū)內(nèi)副本定位算法和區(qū)間副本定位算法等五個(gè)算法,使大量副本定位在本區(qū)域完成,從而有效降低了定位延遲,以滿足特定應(yīng)用的多維度服務(wù)質(zhì)量規(guī)約作為副定位標(biāo)準(zhǔn),有效地保障了目標(biāo)節(jié)點(diǎn)的服務(wù)質(zhì)量。
文獻(xiàn)提出了一種用于分布式系統(tǒng)多副本對(duì)象訪問(wèn)控制的分層結(jié)構(gòu)分布式互斥實(shí)現(xiàn)方法,該方法利用了系統(tǒng)的自組織特性,對(duì)節(jié)點(diǎn)采取分層式管理方式,如圖1 所示。
圖1 25個(gè)節(jié)點(diǎn)分布式系統(tǒng)全活躍分層聚類邏輯圖
第1層每行只有一個(gè)節(jié)點(diǎn),采用動(dòng)態(tài)令牌控制方式,每行的第一個(gè)節(jié)點(diǎn)都帶領(lǐng)著此行的其它節(jié)點(diǎn),以保證在出現(xiàn)節(jié)點(diǎn)間邏輯圖不一致時(shí)互斥操作的順利完成。
第2層為每行的多個(gè)節(jié)點(diǎn),采用基于允許的分布式互斥算法。要求各節(jié)點(diǎn)采用相同的聚類規(guī)則和代表節(jié)點(diǎn)產(chǎn)生規(guī)則,系統(tǒng)中每個(gè)節(jié)點(diǎn)都保持一個(gè)系統(tǒng)分層結(jié)構(gòu)邏輯圖,并隨著系統(tǒng)運(yùn)行而得到及時(shí)更新。對(duì)系統(tǒng)進(jìn)行互斥訪問(wèn),需要得到各子系統(tǒng)代表節(jié)點(diǎn)所組成第2層所有節(jié)點(diǎn)的同意。當(dāng)一個(gè)進(jìn)程需要對(duì)系統(tǒng)中的對(duì)象進(jìn)行互斥訪問(wèn)時(shí),該進(jìn)程先讀取本節(jié)點(diǎn)保存的系統(tǒng)分層邏輯結(jié)構(gòu)圖,并向保存在數(shù)組中的表頭節(jié)點(diǎn)發(fā)送訪問(wèn)請(qǐng)求。
3.數(shù)據(jù)一致性
數(shù)據(jù)一致性是指復(fù)制源相同的多個(gè)副本之間數(shù)據(jù)一致,分為弱數(shù)據(jù)一致性和強(qiáng)數(shù)據(jù)一致性。數(shù)據(jù)各副本最終達(dá)到一致即可滿足弱數(shù)據(jù)一致性,強(qiáng)數(shù)據(jù)一致性則要求數(shù)據(jù)各副本任何時(shí)候都要求致。由于多任務(wù)并行執(zhí)行、網(wǎng)絡(luò)延遲不可預(yù)測(cè)和修改對(duì)象的不確定性等原因,分布式系統(tǒng)中的數(shù)據(jù)一致性維護(hù)過(guò)程比較復(fù)雜。
3.1 Paxos 算法
Paxos 算法是由Leslie Lamport 提出的一種基于消息傳遞的數(shù)據(jù)一致性算法,用于解決分布式系統(tǒng)中的一致性問(wèn)題,是目前為止公認(rèn)最為有效的經(jīng)典數(shù)據(jù)一致性算法。
在Paxos 算法中,節(jié)點(diǎn)被分成了三種類型,Proposer、Acceptor 和Learner,且每個(gè)節(jié)點(diǎn)可以有多種角色。保證數(shù)據(jù)的一致性要滿足以下三個(gè)條件:
1、決議只有在被Proposer 提出后才能被批準(zhǔn);
2、每次只批準(zhǔn)一個(gè)決議;
3、只有決議確定被批準(zhǔn)后Learner 才能獲取這個(gè)決議。
為了達(dá)到這三個(gè)條件,需要滿足下面幾個(gè)約束條件:P1:每個(gè)Acceptor 只接受它得到的第一個(gè)決議;P2a:一旦某個(gè)決議v 得到通過(guò),之后任何Acceptor 再批準(zhǔn)的決議必須是v;P1 和P2a 有矛盾,主要體現(xiàn)在節(jié)點(diǎn)因失效參加不了決議,所以提出來(lái)第三個(gè)條件P2b;P2b:一旦某個(gè)決議v 得到通過(guò),之后任何Proposer 再提出的決議必須是v;P2b 不易通過(guò)技術(shù)實(shí)現(xiàn),所以提出蘊(yùn)含P2b 的P2c;P2c:如果一個(gè)編號(hào)為k 的提案具有值v,那么存在一個(gè)“多數(shù)派”,它們中沒(méi)有誰(shuí)批準(zhǔn)過(guò)編號(hào)小于k 的任何提案,或者它們進(jìn)行的最近一次批準(zhǔn)具有值v。
在這些約束條件的基礎(chǔ)上,將一個(gè)決議的通過(guò)分為兩個(gè)階段:
1.準(zhǔn)備階段:
a.Proposer 選擇一個(gè)提案編號(hào)k 并將prepare 請(qǐng)求發(fā)送給Acceptor 中的一個(gè)多數(shù)派;
b.Acceptor 收到prepare 消息后,如果提案的編號(hào)大于它已經(jīng)回復(fù)的所有prepare 消息,則Acceptor 將自己上次的批準(zhǔn)回復(fù)給Proposer,并承諾不再批準(zhǔn)編號(hào)小于k 的提案。
2.批準(zhǔn)階段:
a.當(dāng)一個(gè)Proposer 收到了多數(shù)Acceptor 對(duì)prepare的回復(fù)后,就進(jìn)入批準(zhǔn)階段。它要向回復(fù)prepare請(qǐng)求的Acceptor 發(fā)送accept請(qǐng)求,包括編號(hào)k和根據(jù)P2c 決定的value(如果根據(jù)P2c沒(méi)有決定value,那么它可以自由決定value);
b.在不違背自己向其他Proposer 的承諾的前提下,Acceptor 收到accept 請(qǐng)求后即批準(zhǔn)這個(gè)請(qǐng)求。為了減少?zèng)Q議發(fā)布過(guò)程中的消息量,Acceptor 將這個(gè)通過(guò)的決議發(fā)送給Learner 的一個(gè)子集,然后由該Learner 去通知所有其他的Learner,即所有副本都將執(zhí)行一樣的更新。
3.2 協(xié)同計(jì)算系統(tǒng)的副本一致性維護(hù)
協(xié)同計(jì)算環(huán)境由計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、通訊技術(shù)、多媒體技術(shù)和群件技術(shù)共同構(gòu)成,使不同地域、不同時(shí)間、不同文化背景的人們能夠協(xié)調(diào)一致地為某項(xiàng)任務(wù)共同工作。
文獻(xiàn)指出基于無(wú)結(jié)構(gòu)P2P 網(wǎng)絡(luò)的文件共享系統(tǒng)中的數(shù)據(jù)一般是靜態(tài)的,數(shù)據(jù)一致性維護(hù)的工作量較小;然而在基于無(wú)結(jié)構(gòu)P2P 網(wǎng)絡(luò)的新型協(xié)同計(jì)算系統(tǒng)中,數(shù)據(jù)具有較強(qiáng)的動(dòng)態(tài)性,這種模式下的數(shù)據(jù)要求可被參與工作的人頻繁更改,同時(shí)保持強(qiáng)數(shù)據(jù)一致性。最簡(jiǎn)便的方法是集中式方法:由一個(gè)或幾個(gè)副本節(jié)點(diǎn)保存所有成員信息,當(dāng)發(fā)生更新時(shí),就由這些節(jié)點(diǎn)來(lái)向其它節(jié)點(diǎn)發(fā)送更新信息。集中式方法的優(yōu)點(diǎn)在于發(fā)送更新快,但它的可擴(kuò)展性差,易引起單點(diǎn)失效問(wèn)題;贕ossip 的組管理協(xié)議的容錯(cuò)能力和擴(kuò)展性較好,但基于Gossip 協(xié)議的數(shù)據(jù)一致性維護(hù)方法不能保證副本數(shù)據(jù)的強(qiáng)一致性,還會(huì)出現(xiàn)大量冗余數(shù)據(jù)。如以樹(shù)狀結(jié)構(gòu)組織節(jié)點(diǎn),更新信息冗余較少且更新快,但容錯(cuò)能力不高。
文獻(xiàn)結(jié)合以上三種方法的優(yōu)點(diǎn),提出一種基于分割樹(shù)的無(wú)結(jié)構(gòu)P2P 網(wǎng)絡(luò)數(shù)據(jù)一致性維護(hù)方法。該方法采用Chord作為副本組管理協(xié)議,對(duì)Chord環(huán)所代表的ID 空間不斷分割,動(dòng)態(tài)地建立更新消息傳播樹(shù),從而達(dá)到副本數(shù)據(jù)的強(qiáng)一致性、更新信息冗余少、容錯(cuò)性能高的目的。
4.副本撤銷
引起副本撤銷的原因通常有:副本的生命周期結(jié)束;副本被訪問(wèn)的頻率很低;副本所在節(jié)點(diǎn)存儲(chǔ)空間不夠;副本所在節(jié)點(diǎn)的處理能力達(dá)到極限。
如果給節(jié)點(diǎn)所在副本制定生命周期,則在生命周期結(jié)束時(shí)就撤銷副本;當(dāng)副本的需求不夠,即被訪問(wèn)頻率很低,應(yīng)予以撤銷;如果節(jié)點(diǎn)需要接納一個(gè)新的副本,而本身存儲(chǔ)空間不夠,則會(huì)從已有副本中撤銷一個(gè)或多個(gè)副本,直到能夠存儲(chǔ)該副本;如果節(jié)點(diǎn)的處理能力已達(dá)到極限,有時(shí)會(huì)新建一份副本到其它節(jié)點(diǎn)上以分擔(dān)負(fù)載,有時(shí)會(huì)選擇撤銷副本。
4.1 周期保存法
文獻(xiàn)采用的是周期保存法:在副本創(chuàng)建時(shí)就給其一個(gè)初始值,每當(dāng)計(jì)時(shí)周期到了就減1,到該值變?yōu)? 時(shí),不論副本的訪問(wèn)頻率或它所在節(jié)點(diǎn)的利用率的高低都撤銷該副本,在未變0之前,如果檢測(cè)到該副本幾乎未被訪問(wèn),則直接撤銷。
4.2 最久未訪問(wèn)法
最久未訪問(wèn)法(Least Recently Used,LRU)是一種比較簡(jiǎn)單直接的撤銷方法:每個(gè)節(jié)點(diǎn)自己維護(hù)一個(gè)LRU 隊(duì)列,隊(duì)列中包含了節(jié)點(diǎn)上的所有文件。新產(chǎn)生的文件和副本被加到隊(duì)列的尾部。當(dāng)一個(gè)文件被客戶端訪問(wèn)時(shí),它也被從LRU 隊(duì)列中抽取出來(lái)放到隊(duì)列的尾部。當(dāng)需要?jiǎng)h除一個(gè)文件時(shí),從隊(duì)列首部的文件開(kāi)始,逐個(gè)刪除,直至磁盤剩余空間達(dá)到新文件的存儲(chǔ)要求。
文獻(xiàn)認(rèn)為生成一個(gè)副本是代價(jià)比較高的一件事,所以建議盡量避免無(wú)謂地副本刪除。在撤銷副本時(shí)使用LRU 方法并結(jié)合考慮副本的重要程度來(lái)決定撤銷對(duì)象可以減少得不償失的副本撤銷。該文描述了當(dāng)迎接新副本而節(jié)點(diǎn)存儲(chǔ)空間不夠時(shí)采取的撤銷策略。其過(guò)程是:將新副本與節(jié)點(diǎn)LRU 隊(duì)列中的第一個(gè)副本開(kāi)始比較重要程度,第一個(gè)重要程度低于新副本的副本將會(huì)被撤銷,且將新副本放置在隊(duì)列的隊(duì)尾,如果比較完后無(wú)副本被撤銷,則取消新副本的存儲(chǔ)。
兩種撤銷方法中的周期保存方法在國(guó)外沒(méi)有被廣泛采用,其中的原因可能是:不同環(huán)境下數(shù)據(jù)的利用率不盡相同,有些數(shù)據(jù)的訪問(wèn)頻率長(zhǎng)期保持在一個(gè)波動(dòng)不大的值上,而有些數(shù)據(jù)可能只是在短期被大量訪問(wèn),副本生命周期的制定會(huì)限制副本被有效地利用。而最久未訪問(wèn)方法則顯得更加靈活,可以降低副本被誤刪的概率。
5. 結(jié)束語(yǔ)
副本管理問(wèn)題是現(xiàn)在的研究熱點(diǎn),通過(guò)對(duì)副本本身進(jìn)行高效管理和一些相關(guān)技術(shù)的改進(jìn),使大眾所處的網(wǎng)絡(luò)環(huán)境能朝更高效率、更可用和更安全的方向發(fā)展。
副本是一群需要實(shí)際存儲(chǔ)空間的實(shí)體,能引發(fā)大量訪問(wèn)請(qǐng)求,繼而影響網(wǎng)絡(luò)中節(jié)點(diǎn)的利用率、帶寬消耗和數(shù)據(jù)一致性維護(hù)等方面。如何為一個(gè)局域網(wǎng)乃至整個(gè)互聯(lián)網(wǎng)制定出一套實(shí)用的副本管理機(jī)制是一項(xiàng)重要任務(wù)。其中,數(shù)據(jù)的副本數(shù)量、副本的分布、副本的定位和副本的數(shù)據(jù)一致性對(duì)網(wǎng)絡(luò)的總體性能影響較大,因而是副本問(wèn)題研究的重點(diǎn)。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:分布式存儲(chǔ)系統(tǒng)中數(shù)據(jù)副本管理機(jī)制
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/10839411368.html