欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)及其應(yīng)用方法

文檔序號:7892371閱讀:134來源:國知局
專利名稱:基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)及其應(yīng)用方法
技術(shù)領(lǐng)域
本發(fā)明涉及一套大規(guī)模分布式存儲系統(tǒng),具體地說,是涉及一套基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)。
背景技術(shù)
隨著數(shù)據(jù)密集型應(yīng)用的日益普及,人們需要對越來越多的數(shù)據(jù)進(jìn)行開放式存儲和高性能計(jì)算,這對存儲系統(tǒng)的可靠性,可擴(kuò)展性等提出了苛刻的要求,而大規(guī)模分布式存儲系統(tǒng)以其較為低廉的價格,良好的可擴(kuò)展性等優(yōu)勢,得到了人們的青睞。其中,數(shù)據(jù)散列機(jī)制是大規(guī)模分布式存儲系統(tǒng)的核心,該機(jī)制決定了系統(tǒng)中數(shù)據(jù)的存儲布局,存儲空間的利用程度,定位數(shù)據(jù)的復(fù)雜程度等。
衡量一個數(shù)據(jù)散列機(jī)制性能的具體指標(biāo)如下1、數(shù)據(jù)散列的均衡程度好的數(shù)據(jù)散列機(jī)制可以讓數(shù)據(jù)均勻散列在各個存儲節(jié)點(diǎn)上, 不產(chǎn)生傾斜,只有這樣的機(jī)制,才能保證整個系統(tǒng)不會產(chǎn)生存儲熱點(diǎn),也可以極大的提升系統(tǒng)的存儲空間利用率。
2、系統(tǒng)的可伸縮性系統(tǒng)可以很好的接受新的存儲節(jié)點(diǎn)的加入和退出,在有新節(jié)點(diǎn)加入時,可以將其他節(jié)點(diǎn)的負(fù)載均勻的遷移到新加入的節(jié)點(diǎn)中,減輕老舊節(jié)點(diǎn)的負(fù)載,擴(kuò)充系統(tǒng)容量;在需要淘汰掉老舊節(jié)點(diǎn)時,可以將老舊節(jié)點(diǎn)上的數(shù)據(jù)均勻地遷移到其他節(jié)點(diǎn)上,不會造成局部熱點(diǎn),并且,數(shù)據(jù)的遷移不會影響到數(shù)據(jù)的可用性,系統(tǒng)規(guī)模的擴(kuò)大,也不會對系統(tǒng)的管理成本造成太多的提高。
3、系統(tǒng)對副本的支持在大規(guī)模分布式存儲系統(tǒng)中,節(jié)點(diǎn)的失效是一件十分常見的事情,然而不能因?yàn)楣?jié)點(diǎn)的失效而使存儲在節(jié)點(diǎn)上的數(shù)據(jù)丟失,同時,為了保證用戶體驗(yàn),也應(yīng)該盡量避免在恢復(fù)數(shù)據(jù)的過程中出現(xiàn)數(shù)據(jù)臨時不可用的情況發(fā)生,副本機(jī)制可以很好的解決上述問題,為系統(tǒng)提供副本機(jī)制,不但可以分擔(dān)用戶對同一資源的訪問壓力,還可以使數(shù)據(jù)的存儲更為可靠。
4、對節(jié)點(diǎn)的權(quán)重的支持整個系統(tǒng)的存儲規(guī)模會隨著時間的增長而變化,隨時都有新的節(jié)點(diǎn)被加入,也有老的節(jié)點(diǎn)被移除,系統(tǒng)中的各節(jié)點(diǎn)的能力即權(quán)重不可能一樣,因此,為保證系統(tǒng)中每個節(jié)點(diǎn)的負(fù)載在同一個水平上,也為了防止熱點(diǎn)出現(xiàn),對每個節(jié)點(diǎn)都應(yīng)予以不同的權(quán)重,以表明其負(fù)載能力,并根據(jù)權(quán)重進(jìn)行負(fù)載安排。
5、定位數(shù)據(jù)的花銷隨著系統(tǒng)規(guī)模越來越大,高效的定位到存儲在系統(tǒng)中的數(shù)據(jù)變得十分重要,定位數(shù)據(jù)的難易程度,時間長短,會直接影響用戶體驗(yàn)。
6、管理的難易程度系統(tǒng)規(guī)模的擴(kuò)大,直接導(dǎo)致系統(tǒng)管理越來越復(fù)雜,也因此,很多散列機(jī)制提出了讓系統(tǒng)自治的算法,但同時,也應(yīng)該給管理員提供手動控制系統(tǒng)的接口, 讓系統(tǒng)可控。
以上六點(diǎn),其中前兩點(diǎn)是大規(guī)模分布式存儲系統(tǒng)的核心,第三點(diǎn)保證了系統(tǒng)的可靠性,第四點(diǎn)關(guān)注系統(tǒng)的整體效能,后兩點(diǎn)主要針對用戶的體驗(yàn)。
現(xiàn)有技術(shù)中的存儲系統(tǒng)所應(yīng)用的散列機(jī)制主要包括以下類型最原始的靜態(tài)哈希散列機(jī)制,不足之處是該機(jī)制在系統(tǒng)擴(kuò)容時要付出巨大的代價,可擴(kuò)展性不好,也不支持權(quán)重;線性哈希機(jī)制,雖然該機(jī)制考慮了系統(tǒng)的可擴(kuò)展性和數(shù)據(jù)定位的花銷,但是在數(shù)據(jù)散列的均勻程度上做的不夠好,并且不支持副本和權(quán)重,也不易于管理;分布式哈希表機(jī)制,不足之處是該機(jī)制定位數(shù)據(jù)花銷較大,須多次前遞,同時不支持權(quán)重且難于管理,散列的均勻程度也較差。發(fā)明內(nèi)容
本發(fā)明的目的在于提供一套基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)及其應(yīng)用方法,解決現(xiàn)有技術(shù)中存在的大規(guī)模分布式存儲系統(tǒng)中的數(shù)據(jù)散列不均衡,不支持副本及節(jié)點(diǎn)權(quán)重等問題。
為了實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案如下基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng),包括用于存儲資源的存儲節(jié)點(diǎn)集群, 分別與該存儲節(jié)點(diǎn)集群連接的對存儲節(jié)點(diǎn)集群進(jìn)行管理的管理節(jié)點(diǎn)和根據(jù)散列機(jī)制獲取資源存儲位置的客戶端,以及連接該管理節(jié)點(diǎn)和客戶端并接受管理節(jié)點(diǎn)管理、為客戶端提供散列映射規(guī)則的規(guī)則節(jié)點(diǎn)集群。
具體地說,所述存儲節(jié)點(diǎn)集群包括至少一個存儲節(jié)點(diǎn),規(guī)則節(jié)點(diǎn)集群包括至少一個規(guī)則節(jié)點(diǎn)。
基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)的應(yīng)用方法,包括以下步驟(a)系統(tǒng)初始化;(b)客戶端檢查是否需要更新散列映射規(guī)則,如果需要更新,則更新至與規(guī)則節(jié)點(diǎn)相同的散列映射規(guī)則;(c)客戶端通過⑶ID生成算法確定待上傳資源的⑶ID,并根據(jù)⑶ID結(jié)合散列映射規(guī)則計(jì)算出存儲節(jié)點(diǎn)位置,將待上傳資源存儲至存儲節(jié)點(diǎn)中;;(d)客戶端得到需要獲取資源的GUID,并根據(jù)散列映射規(guī)則計(jì)算出需要獲取資源的副本對應(yīng)的存儲節(jié)點(diǎn)地址,然后由與存儲節(jié)點(diǎn)地址對應(yīng)的存儲節(jié)點(diǎn)查找該需要獲取的資源, 再向客戶端回復(fù)查找結(jié)果。
進(jìn)一步地,所述步驟(a)具體包括 (al)以初始化方式啟動管理節(jié)點(diǎn);(a2)以初始化方式啟動存儲節(jié)點(diǎn)集群和規(guī)則節(jié)點(diǎn)集群,且存儲節(jié)點(diǎn)集群啟動完畢之后,管理節(jié)點(diǎn)通過與所有存儲節(jié)點(diǎn)保持大周期心跳,來獲取所有存儲節(jié)點(diǎn)的配置; (a3)管理節(jié)點(diǎn)對散列映射規(guī)則進(jìn)行初始化;(a4)管理節(jié)點(diǎn)根據(jù)散列映射規(guī)則,依次向存儲節(jié)點(diǎn)發(fā)送當(dāng)前散列映射規(guī)則中的模數(shù)及初始化命令,存儲節(jié)點(diǎn)保存該模數(shù),并進(jìn)行相應(yīng)的初始化;(a5)管理節(jié)點(diǎn)將初始化后的散列映射規(guī)則發(fā)送至規(guī)則節(jié)點(diǎn)集群,進(jìn)行規(guī)則節(jié)點(diǎn)集群存儲的散列映射規(guī)則的初始化。
其中,所述散列映射規(guī)則包括第一級將總資源的GUID空間通過取模運(yùn)算分散為至少兩個存儲聚集;第二級根據(jù)存儲節(jié)點(diǎn)的權(quán)重,確定存儲聚集的多個副本在每個存儲節(jié)點(diǎn)中的分配情況,即定位表。
所述步驟(a3)具體包括首先,對散列映射規(guī)則的第一級進(jìn)行初始化;其次,通過管理節(jié)點(diǎn)計(jì)算或管理者手動設(shè)置每個存儲節(jié)點(diǎn)應(yīng)該存儲的存儲聚集比例; 最后,根據(jù)存儲聚集比例,將存儲聚集依次按帶狀分配給存儲節(jié)點(diǎn),直到分配完成。
再進(jìn)一步地,所述步驟(b)的具體方法如下首先,客戶端向規(guī)則節(jié)點(diǎn)集群中的任一規(guī)則節(jié)點(diǎn)發(fā)送自身緩存的散列映射規(guī)則的版本號;其次,規(guī)則節(jié)點(diǎn)將客戶端發(fā)來的版本號與自身當(dāng)前存儲的散列映射規(guī)則的版本號進(jìn)行對比,相同,則不更新,反之則向客戶端發(fā)送更新內(nèi)容,使客戶端完成散列映射規(guī)則的更新。
更進(jìn)一步地,所述步驟(C)的具體方法如下(cl)客戶端根據(jù)⑶ID生成算法,生成所需存儲資源的⑶ID;(c2)客戶端通過GUID結(jié)合散列映射規(guī)則計(jì)算出該存儲資源副本的所有存儲節(jié)點(diǎn)地址,并隨機(jī)向其中一個存儲節(jié)點(diǎn)發(fā)起連接,并將該存儲節(jié)點(diǎn)作為該次上傳的發(fā)起節(jié)點(diǎn);(c3)客戶端向該發(fā)起節(jié)點(diǎn)發(fā)送所需上傳資源的GUID以及該資源所有副本對應(yīng)的存儲節(jié)點(diǎn)地址;(c4)該發(fā)起節(jié)點(diǎn)與存儲資源副本的其他存儲節(jié)點(diǎn)建立連接,并將GUID發(fā)送給這些存儲節(jié)點(diǎn);(c5)當(dāng)發(fā)起節(jié)點(diǎn)連接的存儲節(jié)點(diǎn)數(shù)量達(dá)到上傳的副本數(shù)量的最小值時,發(fā)起節(jié)點(diǎn)則向客戶端回復(fù)確認(rèn)信息,客戶端開始上傳資源,并由發(fā)起節(jié)點(diǎn)轉(zhuǎn)發(fā)給其他存儲節(jié)點(diǎn)。
另外,所述步驟(C)還包括步驟(c2)中,當(dāng)客戶端隨機(jī)向其中一個存儲節(jié)點(diǎn)發(fā)起連接產(chǎn)生錯誤時,則隨即選取另一個重試,如果全部連接錯誤,則更新規(guī)則并回到步驟(cl) 重試;步驟(c5)中,當(dāng)發(fā)起節(jié)點(diǎn)連接上的存儲節(jié)點(diǎn)數(shù)量沒有達(dá)到副本數(shù)量要求時,則回到步驟(cl)重新生成新的⑶ID;步驟(c5)中,客戶端在上傳資源時,如果發(fā)起節(jié)點(diǎn)失效,則客戶端回到步驟(c2)重試,如果其他存儲節(jié)點(diǎn)失效,則由發(fā)起節(jié)點(diǎn)判斷副本數(shù)量是否達(dá)標(biāo),如果不達(dá)標(biāo),則回復(fù)客戶端上傳失敗并回到步驟(cl)重新生成新的⑶ID。
更進(jìn)一步地,所述步驟(d)的具體方法如下(dl)客戶端得到需要獲取的資源的GUID,并據(jù)該GUID結(jié)合散列映射規(guī)則計(jì)算出存儲該資源的副本的所有存儲節(jié)點(diǎn)地址;(d2)客戶端隨機(jī)向其中一個存儲節(jié)點(diǎn)發(fā)起連接; (d3)客戶端向連接上的存儲節(jié)點(diǎn)發(fā)送需要獲取的資源的⑶ID ; (d4)存儲節(jié)點(diǎn)查找該資源對應(yīng)的GUID,如果找到對應(yīng)的GUID,則向客戶端回復(fù)對應(yīng)資源的數(shù)據(jù),如沒有找到對應(yīng)的GUID,則向客戶端回復(fù)出錯,客戶端回到步驟(d2)。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果1.本發(fā)明通過資源的GUID結(jié)合散列映射規(guī)則進(jìn)行運(yùn)算,得出資源的存儲位置,將數(shù)據(jù)均勻散列在各個存儲節(jié)點(diǎn)上,使得整個系統(tǒng)不會產(chǎn)生存儲熱點(diǎn),進(jìn)而極大地提升了系統(tǒng)的存儲利用率;同時,資源的定位是分布式的在客戶端上進(jìn)行的,不需要系統(tǒng)中的某個專用服務(wù)器,因此除去了系統(tǒng)的中心節(jié)點(diǎn),從而為系統(tǒng)的擴(kuò)展、提高系統(tǒng)伸縮性提供了可實(shí)現(xiàn)的基石出。
2.本發(fā)明中,系統(tǒng)可以很好的接受新的存儲節(jié)點(diǎn)的加入和退出,新節(jié)點(diǎn)的加入可以減輕老舊節(jié)點(diǎn)的負(fù)載,擴(kuò)充系統(tǒng)容量,在需要淘汰掉老舊節(jié)點(diǎn)時,也可將老舊節(jié)點(diǎn)上的數(shù)據(jù)均勻遷移到其他節(jié)點(diǎn)上,不會造成局部熱點(diǎn),且數(shù)據(jù)的遷移不會影響到數(shù)據(jù)的可用性,系統(tǒng)規(guī)模的擴(kuò)大,也不會對系統(tǒng)的管理成本造成太多的提高;3.本發(fā)明支持副本機(jī)制,系統(tǒng)不會因?yàn)榇鎯?jié)點(diǎn)的失效而導(dǎo)致存儲在節(jié)點(diǎn)上的數(shù)據(jù)丟失,且在恢復(fù)數(shù)據(jù)的過程中數(shù)據(jù)仍然可用,這樣不僅可以分擔(dān)用戶對同一資源的訪問壓力, 還可以使數(shù)據(jù)的存儲更為可靠;4.本發(fā)明支持節(jié)點(diǎn)權(quán)重,系統(tǒng)中每個節(jié)點(diǎn)都有不同的權(quán)重,系統(tǒng)根據(jù)各個節(jié)點(diǎn)的權(quán)重對其負(fù)載進(jìn)行安排,這樣有效地保證了系統(tǒng)中每個節(jié)點(diǎn)的負(fù)載在同一水平上;5.本發(fā)明在支持系統(tǒng)自治的同時給管理員提供了手動控制系統(tǒng)的接口,降低了管理的難度;6.本發(fā)明以極小的客戶端存儲和初始化代價同時實(shí)現(xiàn)了數(shù)據(jù)的平均散列,系統(tǒng)的高度擴(kuò)展,內(nèi)容的快速定位等,性價比很高。


圖1為本發(fā)明-實(shí)施例中基于本發(fā)明的大規(guī)模分布式存儲系統(tǒng)的系統(tǒng)框圖。
圖2為本發(fā)明-實(shí)施例中原始的模數(shù)以及散列映射規(guī)則第二級對應(yīng)表的示意圖。
圖3為本發(fā)明-實(shí)施例中存儲聚集變換運(yùn)算后的模數(shù)及散列映射規(guī)則第二級對應(yīng)表的示意圖。
圖4為本發(fā)明-實(shí)施例中存儲聚集擴(kuò)充運(yùn)算后的模數(shù)及散列映射規(guī)則第二級對應(yīng)表的示意圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對本發(fā)明作進(jìn)一步說明,本發(fā)明的實(shí)施方式包括但不限于下列實(shí)施例。
實(shí)施例1如圖1所示,基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng),包括用于存儲資源的存儲節(jié)點(diǎn)集群,分別與該存儲節(jié)點(diǎn)集群連接的對存儲節(jié)點(diǎn)集群進(jìn)行管理的管理節(jié)點(diǎn)和根據(jù)散列機(jī)制獲取資源存儲位置的客戶端,以及連接該管理節(jié)點(diǎn)和客戶端并接受管理節(jié)點(diǎn)管理、 為客戶端提供散列映射規(guī)則的規(guī)則節(jié)點(diǎn)集群。
以下為對系統(tǒng)中各部分的詳細(xì)說明存儲節(jié)點(diǎn)集群,由所有的存儲節(jié)點(diǎn)構(gòu)成,系統(tǒng)中的所有資源都存儲在該集群中的存儲節(jié)點(diǎn)上,存儲節(jié)點(diǎn)和管理節(jié)點(diǎn)之間維持大周期1分鐘以上的心跳,以匯報(bào)自身情況,即磁盤使用情況及當(dāng)前壓力,并接受管理節(jié)點(diǎn)統(tǒng)一管理。
規(guī)則節(jié)點(diǎn)集群,由所有的規(guī)則節(jié)點(diǎn)構(gòu)成,每個規(guī)則節(jié)點(diǎn)都保存有當(dāng)前系統(tǒng)的最新映射存儲規(guī)則,該集群負(fù)責(zé)響應(yīng)客戶端更新規(guī)則的請求,并接受管理節(jié)點(diǎn)的統(tǒng)一管理,當(dāng)管理節(jié)點(diǎn)對規(guī)則進(jìn)行更新之后,其會以版本更新的方式通知所有的規(guī)則節(jié)點(diǎn)更新規(guī)則,作為優(yōu)選對規(guī)則集群采用DNS重定位或者反向路由的方式進(jìn)行訪問,以分散壓力。
管理節(jié)點(diǎn),該節(jié)點(diǎn)是系統(tǒng)的中心控制節(jié)點(diǎn),作為優(yōu)選我們采用雙機(jī)熱備的方法, 防止單點(diǎn)失效的發(fā)生,雖然該節(jié)點(diǎn)是系統(tǒng)的中心,但其只與存儲節(jié)點(diǎn)維持大周期的心跳,并不對外服務(wù),因此其壓力非常小,其可以通過自動,或管理員手動的方式,對系統(tǒng)的負(fù)載均衡進(jìn)行總體的控制,并在每次對系統(tǒng)的負(fù)載作出調(diào)整后,通知規(guī)則節(jié)點(diǎn)集群進(jìn)行規(guī)則更新。客戶端通過資源的全局唯一標(biāo)識符⑶ID結(jié)合散列映射規(guī)則進(jìn)行運(yùn)算,得到資源 的具體存儲位置,對資源進(jìn)行訪問,客戶端會緩存規(guī)則,只有在其沒有規(guī)則或定位資源出現(xiàn) 錯誤吋,客戶端才會向規(guī)則集群更新規(guī)則。具體地說,上述散列映射規(guī)則分為兩級,第一級規(guī)則將⑶ID空間通過取模運(yùn)算分 散為數(shù)量較少的、較為平均的多個存儲聚集;第二級規(guī)則是ー張定位表,行代表存儲聚集的 索引號,每行有多列,每列對應(yīng)ー個存放存儲聚集副本的存儲節(jié)點(diǎn)。第一級散列映射規(guī)則可以表示為以下形式
權(quán)利要求
1.基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng),其特征在于,包括用于存儲資源的存儲節(jié)點(diǎn)集群,分別與該存儲節(jié)點(diǎn)集群連接的對存儲節(jié)點(diǎn)集群進(jìn)行管理的管理節(jié)點(diǎn)和根據(jù)散列機(jī)制獲取資源存儲位置的客戶端,以及連接該管理節(jié)點(diǎn)和客戶端并接受管理節(jié)點(diǎn)管理、為客戶端提供散列映射規(guī)則的規(guī)則節(jié)點(diǎn)集群。
2.根據(jù)權(quán)利要求1所述的基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng),其特征在于,所述存儲節(jié)點(diǎn)集群包括至少一個存儲節(jié)點(diǎn),規(guī)則節(jié)點(diǎn)集群包括至少一個規(guī)則節(jié)點(diǎn)。
3.基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)的應(yīng)用方法,其特征在于,包括以下步驟(a)系統(tǒng)初始化;(b)客戶端檢查是否需要更新散列映射規(guī)則,如果需要更新,則更新至與規(guī)則節(jié)點(diǎn)相同的散列映射規(guī)則;(c)客戶端通過⑶ID生成算法確定待上傳資源的⑶ID,并根據(jù)⑶ID結(jié)合散列映射規(guī)則計(jì)算出存儲節(jié)點(diǎn)位置,將待上傳資源存儲至存儲節(jié)點(diǎn)之中;(d)客戶端得到需要獲取資源的GUID,并根據(jù)散列映射規(guī)則計(jì)算出需要獲取資源的副本對應(yīng)的存儲節(jié)點(diǎn)地址,然后由與存儲節(jié)點(diǎn)地址對應(yīng)的存儲節(jié)點(diǎn)查找該需要獲取的資源, 再向客戶端回復(fù)查找結(jié)果。
4.根據(jù)權(quán)利要求3所述的基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)的應(yīng)用方法, 其特征在于,所述步驟(a)具體包括(al)以初始化方式啟動管理節(jié)點(diǎn);(a2)以初始化方式啟動存儲節(jié)點(diǎn)集群和規(guī)則節(jié)點(diǎn)集群,且存儲節(jié)點(diǎn)集群啟動完畢之后,管理節(jié)點(diǎn)通過與所有存儲節(jié)點(diǎn)保持大周期心跳,來獲取所有存儲節(jié)點(diǎn)的配置;(a3)管理節(jié)點(diǎn)對散列映射規(guī)則進(jìn)行初始化;(a4)管理節(jié)點(diǎn)根據(jù)散列映射規(guī)則,依次向存儲節(jié)點(diǎn)發(fā)送當(dāng)前散列映射規(guī)則中的模數(shù)及初始化命令,存儲節(jié)點(diǎn)保存該模數(shù),并進(jìn)行相應(yīng)的初始化;(a5)管理節(jié)點(diǎn)將初始化后的散列映射規(guī)則發(fā)送至規(guī)則節(jié)點(diǎn)集群,進(jìn)行規(guī)則節(jié)點(diǎn)集群存儲的散列映射規(guī)則的初始化。
5.根據(jù)權(quán)利要求3或4所述的基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)的應(yīng)用方法,其特征在于,所述散列映射規(guī)則包括第一級將總資源的GUID空間通過取模運(yùn)算分散為至少兩個存儲聚集;第二級根據(jù)存儲節(jié)點(diǎn)的權(quán)重,確定存儲聚集的多個副本在每個存儲節(jié)點(diǎn)中的分配情況,即定位表。
6.根據(jù)權(quán)利要求5所述的基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)的應(yīng)用方法, 其特征在于,所述步驟(a3)具體包括首先,對散列映射規(guī)則的第一級進(jìn)行初始化;其次,通過管理節(jié)點(diǎn)計(jì)算或管理者手動設(shè)置每個存儲節(jié)點(diǎn)應(yīng)該存儲的存儲聚集比例;最后,根據(jù)存儲聚集比例,將存儲聚集依次按帶狀分配給存儲節(jié)點(diǎn),直到分配完成。
7.根據(jù)權(quán)利要求3或4或6所述的基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)的應(yīng)用方法,其特征在于,所述步驟(b)的具體方法如下首先,客戶端向規(guī)則節(jié)點(diǎn)集群中的任一規(guī)則節(jié)點(diǎn)發(fā)送自身緩存的散列映射規(guī)則的版本號;其次,規(guī)則節(jié)點(diǎn)將客戶端發(fā)來的版本號與自身當(dāng)前存儲的散列映射規(guī)則的版本號進(jìn)行對比,相同,則不更新,反之則向客戶端發(fā)送更新內(nèi)容,使客戶端完成散列映射規(guī)則的更新。
8.根據(jù)權(quán)利要求7所述的基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)的應(yīng)用方法, 其特征在于,所述步驟(c)的具體方法如下(cl)客戶端根據(jù)⑶ID生成算法,生成所需存儲資源的⑶ID ; (c2)客戶端通過GUID結(jié)合散列映射規(guī)則計(jì)算出該存儲資源副本的所有存儲節(jié)點(diǎn)地址,并隨機(jī)向其中一個存儲節(jié)點(diǎn)發(fā)起連接,且將該存儲節(jié)點(diǎn)作為該次上傳的發(fā)起節(jié)點(diǎn);(c3)客戶端向該發(fā)起節(jié)點(diǎn)發(fā)送所需上傳資源的GUID以及該資源所有副本對應(yīng)的存儲節(jié)點(diǎn)地址;(c4)該發(fā)起節(jié)點(diǎn)與存儲資源副本的其他存儲節(jié)點(diǎn)建立連接,并將GUID發(fā)送給相應(yīng)的存儲節(jié)點(diǎn);(c5)當(dāng)發(fā)起節(jié)點(diǎn)連接的存儲節(jié)點(diǎn)數(shù)量達(dá)到上傳的副本數(shù)量的最小值時,發(fā)起節(jié)點(diǎn)則向客戶端回復(fù)確認(rèn)信息,客戶端開始上傳資源,并由發(fā)起節(jié)點(diǎn)轉(zhuǎn)發(fā)給其他存儲節(jié)點(diǎn)。
9.根據(jù)權(quán)利要求8所述的基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)的應(yīng)用方法, 其特征在于,所述步驟(c )還包括步驟(c2)中,當(dāng)客戶端隨機(jī)向其中一個存儲節(jié)點(diǎn)發(fā)起連接產(chǎn)生錯誤時,則隨機(jī)選取另一個重試,如果全部連接錯誤,則更新散列映射規(guī)則并返回步驟(cl)重新執(zhí)行;步驟(c5)中,當(dāng)發(fā)起節(jié)點(diǎn)連接上的存儲節(jié)點(diǎn)數(shù)量未達(dá)到副本數(shù)量要求時,則返回到步驟(cl)繼續(xù)執(zhí)行;步驟(c5)中,客戶端在上傳資源時,如果發(fā)起節(jié)點(diǎn)失效,則返回步驟(c2)重新執(zhí)行;如果其他存儲節(jié)點(diǎn)失效,則由發(fā)起節(jié)點(diǎn)判斷副本數(shù)量是否達(dá)標(biāo),如果不達(dá)標(biāo),則回復(fù)客戶端上傳失敗,并回到步驟(c 1)重新執(zhí)行。
10.根據(jù)權(quán)利要求9所述的基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)的應(yīng)用方法,其特征在于,所述步驟(d)的具體方法如下(dl)客戶端得到需要獲取的資源的GUID,并根據(jù)該GUID結(jié)合散列映射規(guī)則計(jì)算出存儲該資源副本的所有存儲節(jié)點(diǎn)地址;(d2)客戶端隨機(jī)向其中一個存儲節(jié)點(diǎn)發(fā)起連接; (d3)客戶端向連接上的存儲節(jié)點(diǎn)發(fā)送需要獲取的資源的⑶ID ; (d4)存儲節(jié)點(diǎn)查找該資源對應(yīng)的GUID,如果找到對應(yīng)的GUID,則向客戶端回復(fù)對應(yīng)資源的數(shù)據(jù),反之,則向客戶端回復(fù)出錯,客戶端回到步驟(d2)。
全文摘要
本發(fā)明公開了一套基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)及其應(yīng)用方法,解決了現(xiàn)有技術(shù)中存在的大規(guī)模分布式存儲系統(tǒng)中的數(shù)據(jù)散列不均衡,不支持副本及節(jié)點(diǎn)權(quán)重,管理難度較大等問題。該基于多級映射的大規(guī)模多副本分布式存儲系統(tǒng)包括用于存儲資源的存儲節(jié)點(diǎn)集群,分別與該存儲節(jié)點(diǎn)集群連接的對存儲節(jié)點(diǎn)集群進(jìn)行管理的管理節(jié)點(diǎn)和根據(jù)散列機(jī)制獲取資源存儲位置的客戶端,以及連接該管理節(jié)點(diǎn)和客戶端并接受管理節(jié)點(diǎn)管理、為客戶端提供散列映射規(guī)則的規(guī)則節(jié)點(diǎn)集群。
文檔編號H04L29/08GK102571991SQ20121008304
公開日2012年7月11日 申請日期2012年3月27日 優(yōu)先權(quán)日2012年3月27日
發(fā)明者李林, 梅玫, 段翰聰, 聶曉文, 詹文翰 申請人:電子科技大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
丰宁| 汉沽区| 双辽市| 密山市| 陈巴尔虎旗| 哈巴河县| 镇安县| 大港区| 绥芬河市| 犍为县| 天祝| 额尔古纳市| 连平县| 庄浪县| 景谷| 聂荣县| 连城县| 洛川县| 罗源县| 晋宁县| 无为县| 平泉县| 邹平县| 哈密市| 盘锦市| 扬州市| 邵武市| 延寿县| 清丰县| 修武县| 万山特区| 华容县| 海晏县| 沧源| 湖北省| 霍城县| 陕西省| 保定市| 香格里拉县| 齐齐哈尔市| 比如县|