專利名稱:一種對數(shù)據(jù)進(jìn)行智能分層管理的云存儲(chǔ)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及對數(shù)據(jù)進(jìn)行智能管理,特別是對數(shù)據(jù)進(jìn)行智能分層管理的云存儲(chǔ)系統(tǒng)。
背景技術(shù):
分層存儲(chǔ)概念本身已不新鮮,在馮-諾依曼提出計(jì)算機(jī)的模型“存儲(chǔ)程序”時(shí)就已經(jīng)包含了分層存儲(chǔ)的概念?!按鎯?chǔ)程序”原理,是將根據(jù)特定問題編寫的程序存放在計(jì)算機(jī)存儲(chǔ)器中,然后按存儲(chǔ)器中的存儲(chǔ)程序的首地址執(zhí)行程序的第一條指令,以后就按照該程序的規(guī)定順序執(zhí)行其他指令,直至程序結(jié)束執(zhí)行。在這里的外存儲(chǔ)器與內(nèi)存儲(chǔ)器,就是一個(gè)分層存儲(chǔ)的最初模型。分層存儲(chǔ)是將數(shù)據(jù)存儲(chǔ)在不同層級的介質(zhì)中,并在不同的介質(zhì)之間進(jìn)行自動(dòng)或者手動(dòng)的數(shù)據(jù)遷移,復(fù)制等操作。而實(shí)際上,如果將相同成本及效率的存儲(chǔ)介質(zhì)放在不同層級之間進(jìn)行數(shù)據(jù)遷移復(fù)制在實(shí)用性及成本上并不是有效的數(shù)據(jù)存儲(chǔ)方式。因此,在不同的層級之間必須使用有差別的存儲(chǔ)介質(zhì),以期在相同成本下,既滿足性能的需要又滿足容量的需要。這種存儲(chǔ)介質(zhì)上的差別主要是在存取速度上及容量上。存取速度快的介質(zhì)通常都是存儲(chǔ)單位成本高,而且容量相對來講比較低。相應(yīng)的,存取速度慢的介質(zhì)通常是為了滿足容量與成本方面的要求,即在相同的成本下可以得到更大的容量。所以,從這方面來說,分層存儲(chǔ)其實(shí)是一種在高速小容量層級的介質(zhì)層與低速大容量層級的介質(zhì)層之間進(jìn)行一種自動(dòng)或者手動(dòng)數(shù)據(jù)遷移、復(fù)制、管理等操作的一種存儲(chǔ)技術(shù)及方案。隨著存儲(chǔ)需求不斷上升,將所有的數(shù)據(jù)保存在價(jià)格不菲的高性能光纖通道磁盤中顯得有點(diǎn)不切實(shí)際?,F(xiàn)有的分層存儲(chǔ)是將關(guān)鍵數(shù)據(jù)保存在光纖通道磁盤中,而將價(jià)值略低的數(shù)據(jù)保存在速度較慢、價(jià)格較低的存儲(chǔ)中,如SATA磁盤甚至是磁帶,如建立幾層存儲(chǔ)。但是,將公司數(shù)據(jù)分別存儲(chǔ)相應(yīng)的存儲(chǔ)層中,并非是那么容易和高率。首先,存儲(chǔ)管理員必須將數(shù)據(jù)分類,以了解文件或文件種類的價(jià)值;其次,公司業(yè)務(wù)變化時(shí),如何及時(shí)、準(zhǔn)確的把數(shù)據(jù)遷移回來提供數(shù)據(jù)服務(wù);再者,怎樣保證數(shù)據(jù)的安全和整個(gè)存儲(chǔ)架構(gòu)的存儲(chǔ)訪問效率等。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)存在的技術(shù)問題,本發(fā)明解決的技術(shù)問題是,提供一種對數(shù)據(jù)進(jìn)行智能分層管理的云存儲(chǔ)系統(tǒng),對數(shù)據(jù)進(jìn)行智能分層管理,根據(jù)訪問文件需求情況將文件存儲(chǔ)在不同的存儲(chǔ)層。本發(fā)明的一種對數(shù)據(jù)進(jìn)行智能分層管理的云存儲(chǔ)系統(tǒng),包括一個(gè)或一個(gè)以上控制節(jié)點(diǎn)和多個(gè)存儲(chǔ)節(jié)點(diǎn),一個(gè)控制節(jié)點(diǎn)控制兩個(gè)以上存儲(chǔ)節(jié)點(diǎn),一個(gè)存儲(chǔ)節(jié)點(diǎn)只能被一個(gè)控制節(jié)點(diǎn)控制,控制節(jié)點(diǎn)統(tǒng)一管理存儲(chǔ)節(jié)點(diǎn)上的文件元數(shù)據(jù)、文件的分塊、文件數(shù)據(jù)塊的存放地,選擇并維護(hù)這些文件與數(shù)據(jù)塊的對應(yīng)關(guān)系及文件數(shù)據(jù)塊的存放和數(shù)據(jù)的遷移,其中,所述控制節(jié)點(diǎn)中至少有一個(gè)控制節(jié)點(diǎn)把其控制的存儲(chǔ)節(jié)點(diǎn)分成兩個(gè)以上存儲(chǔ)層進(jìn)行管理,一個(gè)存儲(chǔ)節(jié)點(diǎn)可以只屬于一個(gè)存儲(chǔ)層,也可以屬于多個(gè)存儲(chǔ)層,不同的存儲(chǔ)層具有不同的優(yōu)先存儲(chǔ)級別;初始存儲(chǔ)的文件保存在其中一個(gè)存儲(chǔ)層上;對已存儲(chǔ)的文件根據(jù)訪問次數(shù)作為參數(shù)根據(jù)設(shè)定的規(guī)則計(jì)算出優(yōu)先存儲(chǔ)級別,當(dāng)一個(gè)文件的優(yōu)先存儲(chǔ)級別與當(dāng)前存儲(chǔ)層不符時(shí),如果與其優(yōu)先存儲(chǔ)級別相符合的存儲(chǔ)層有足夠存儲(chǔ)空間,則將該文件移動(dòng)存儲(chǔ)到此存儲(chǔ)層。如相同時(shí)間內(nèi)訪問次數(shù)高的存儲(chǔ)級別高,訪問次數(shù)低的存儲(chǔ)基本低。簡單的操作也可以只按一個(gè)參數(shù),一個(gè)參數(shù)的情況下訪問次數(shù)是比較好的選擇,用該參數(shù)設(shè)定的規(guī)則比較容易操作,優(yōu)先存儲(chǔ)級別直接與訪問次數(shù)關(guān)聯(lián),但可以根據(jù)需求還增設(shè)其他參數(shù),滿足更高的要求,具體參數(shù)數(shù)目不限,但訪問次數(shù)是不可缺少的參數(shù)。其中優(yōu)先存儲(chǔ)級別最高的存儲(chǔ)層的硬盤可以為光纖通道磁盤,該存儲(chǔ)層的存儲(chǔ)速度最快;有更快存儲(chǔ)速度的磁盤后也可以采用更快的磁盤。作為上述智能分層管理的云存儲(chǔ)系統(tǒng)進(jìn)一步改進(jìn),所述的參數(shù)還包括時(shí)間。文件被訪問次數(shù)和時(shí)間根據(jù)設(shè)定的規(guī)則計(jì)算出優(yōu)先存儲(chǔ)級別更科學(xué),具體的規(guī)則可以自由設(shè)定,其中比較簡單的就是在特定時(shí)間內(nèi)訪問的次數(shù)來確定優(yōu)先存儲(chǔ)級別,不在此時(shí)間段內(nèi)的訪問次數(shù)被忽略不計(jì);也可以在特定時(shí)間內(nèi)的訪問次數(shù)一次計(jì)數(shù)為一次,不在此時(shí)間范圍內(nèi)的訪問次數(shù)按一定規(guī)則轉(zhuǎn)換成一定次數(shù)進(jìn)行計(jì)數(shù),如訪問一次計(jì)數(shù)為0.5次,時(shí)間距離現(xiàn)在時(shí)間越遠(yuǎn)的計(jì)數(shù)次數(shù)越少等。作為上述智能分層管理的云存儲(chǔ)系統(tǒng)進(jìn)一步改進(jìn),所述的規(guī)則為最近最少使用算法。作為上述智能分層管理的云存儲(chǔ)系統(tǒng)進(jìn)一步改進(jìn),所述的兩個(gè)以上存儲(chǔ)層為三個(gè)存儲(chǔ)層,每個(gè)存儲(chǔ)層采用不同的硬盤,根據(jù)存儲(chǔ)優(yōu)先級別高低的順序在這三層中按I: 30: 75的比例配置固態(tài)硬盤、SAS硬盤、SATA硬盤。實(shí)際應(yīng)用中更趨向于各層之間的存儲(chǔ)介質(zhì)、存儲(chǔ)速度、介質(zhì)價(jià)格等都是不同,存儲(chǔ)和訪問速度快的介質(zhì)放在優(yōu)先級比較高的存儲(chǔ)層。作為上述智能分層管理的云存儲(chǔ)系統(tǒng)進(jìn)一步改進(jìn),所述的兩個(gè)以上存儲(chǔ)層為三個(gè)存儲(chǔ)層,每個(gè)存儲(chǔ)層采用不同的硬盤,根據(jù)優(yōu)先存儲(chǔ)級別高低的順序在這三層中按
I: 30: 75的比例配置固態(tài)硬盤、SAS硬盤、SATA硬盤。三個(gè)存儲(chǔ)層的存儲(chǔ)速度、存儲(chǔ)容量、存儲(chǔ)介質(zhì)等可以是不同,也可以相同。實(shí)際應(yīng)用中更趨向于各層之間的存儲(chǔ)介質(zhì)、存儲(chǔ)速度、介質(zhì)價(jià)格等都是不同,存儲(chǔ)和訪問速度快的介質(zhì)放在優(yōu)先級比較高的存儲(chǔ)層。這三層的訪問和存儲(chǔ)速度依次遞減,價(jià)格也是依次遞減,這樣能實(shí)現(xiàn)更好的性價(jià)比。作為上述智能分層管理的云存儲(chǔ)系統(tǒng)進(jìn)一步改進(jìn),所述的存儲(chǔ)層為四層以上,按優(yōu)先存儲(chǔ)級別進(jìn)行分層,第一存儲(chǔ)層的優(yōu)先存儲(chǔ)級別要求最高,第二存儲(chǔ)層比第一存儲(chǔ)層優(yōu)先存儲(chǔ)級別低,依次下面各存儲(chǔ)層比其前面存儲(chǔ)層優(yōu)先存儲(chǔ)級別低,比后面優(yōu)先存儲(chǔ)級別高,其中第一存儲(chǔ)層和第二存儲(chǔ)層采用多副本機(jī)制,第三存儲(chǔ)層、第四存儲(chǔ)層之后使用數(shù)據(jù)編碼機(jī)制,保證一份原始數(shù)據(jù)和多份編碼數(shù)據(jù)。對于數(shù)據(jù)編碼機(jī)制:1、如果原始數(shù)據(jù)不可以用,則將進(jìn)行數(shù)據(jù)解碼,重新生成原始數(shù)據(jù)存儲(chǔ)放于其它存儲(chǔ)節(jié)點(diǎn);2、如果是數(shù)據(jù)編碼數(shù)據(jù)不可用,此時(shí)查看是否有其它的數(shù)據(jù)編碼數(shù)據(jù),如果有通過拷貝編碼數(shù)據(jù)實(shí)現(xiàn)數(shù)據(jù)恢復(fù);如果全部編碼數(shù)據(jù)都不可用則時(shí)行重新編碼生成。作為上述智能分層管理的云存儲(chǔ)系統(tǒng)進(jìn)一步改進(jìn),所述初始存儲(chǔ)的文件保存在一個(gè)固定存儲(chǔ)層上。具有第二、第三存儲(chǔ)優(yōu)先級的存儲(chǔ)層都是比較好的選擇。實(shí)際中也可以根據(jù)需要選擇第一層或其他存儲(chǔ)層。
作為上述智能分層管理的云存儲(chǔ)系統(tǒng)進(jìn)一步改進(jìn),所述的一個(gè)固定存儲(chǔ)層,如果該存儲(chǔ)層在存儲(chǔ)前發(fā)現(xiàn)沒有足夠空間供存儲(chǔ)所述初始存儲(chǔ)的文件,就運(yùn)用LRU算法計(jì)算該存儲(chǔ)層已存儲(chǔ)文件的優(yōu)先存儲(chǔ)級別,若有文件的優(yōu)先存儲(chǔ)級別與此層上的優(yōu)先存儲(chǔ)級別不符,將其轉(zhuǎn)移至與其優(yōu)先存儲(chǔ)級別相符合的存儲(chǔ)層。一個(gè)文件被訪問是系統(tǒng)可以自動(dòng)根據(jù)其存儲(chǔ)優(yōu)先級來確定其存儲(chǔ)層,但如果文件長時(shí)間處于閑置狀態(tài)時(shí),系統(tǒng)可以主動(dòng)去處理這類文件把其轉(zhuǎn)移到與其自身相符的存儲(chǔ)層上,也可以當(dāng)其所在存儲(chǔ)層空間小到一定值后開始對該層文件進(jìn)行處理。作為上述智能分層管理的云存儲(chǔ)系統(tǒng)進(jìn)一步改進(jìn),所述的固定存儲(chǔ)層為第二存儲(chǔ)層,第二存儲(chǔ)層的優(yōu)先存儲(chǔ)級別僅次于第一存儲(chǔ)層。具有第二優(yōu)先級別的存儲(chǔ)層存儲(chǔ)初始文件一般來講是比較好的選擇,這是建立在分層3或4層左右,如果分層太多,那么可以根據(jù)需要來調(diào)整初始數(shù)據(jù)存儲(chǔ)在哪個(gè)優(yōu)先級別的存儲(chǔ)層上更好。作為上述智能分層管理的云存儲(chǔ)系統(tǒng)進(jìn)一步改進(jìn),所述的存儲(chǔ)層多少、大小及每個(gè)存儲(chǔ)層的優(yōu)先存儲(chǔ)級別范圍由系統(tǒng)自動(dòng)設(shè)定或用戶進(jìn)行設(shè)定。存儲(chǔ)層的多少和每個(gè)存儲(chǔ)層的大小都是根據(jù)需要來設(shè)定的,其中存儲(chǔ)介質(zhì)狀況是一個(gè)重要考慮因素,一般存儲(chǔ)速度快的介質(zhì)放在最高優(yōu)先級的存儲(chǔ)層上,根據(jù)存儲(chǔ)速度來進(jìn)行優(yōu)先存儲(chǔ)級別和存儲(chǔ)層的設(shè)定是個(gè)比較好的選擇,但這也不是固定的,也會(huì)因其他因素,如安全、出錯(cuò)幾率、介質(zhì)的耐用性等,其中介質(zhì)的耐用性本身也是一個(gè)不錯(cuò)的分層參考標(biāo)準(zhǔn),其也可以與存儲(chǔ)速度一起做為分層的參考標(biāo)準(zhǔn)。作為上述智能分層管理的云存儲(chǔ)系統(tǒng)進(jìn)一步改進(jìn),所述的優(yōu)先存儲(chǔ)級別的一定范圍值與某一特定存儲(chǔ)層是相對應(yīng)的,其中具有最高優(yōu)先存儲(chǔ)級別的存儲(chǔ)層存儲(chǔ)文件的優(yōu)先存儲(chǔ)級別根據(jù)存儲(chǔ)空間的存儲(chǔ)情況變化,變化規(guī)律為如果此存儲(chǔ)層的文件在一定時(shí)間內(nèi)保持在一定數(shù)量以上的存儲(chǔ)空間空閑,則此層的優(yōu)先存儲(chǔ)級別會(huì)降低;如果此存儲(chǔ)層的存儲(chǔ)空間已經(jīng)剩余量小于一定值,且已存儲(chǔ)的文件全部是符合此層存儲(chǔ)優(yōu)先級要求的文件,則此存儲(chǔ)層的存儲(chǔ)優(yōu)先級別升高。相較于現(xiàn)有技術(shù),本發(fā)明的一種對數(shù)據(jù)進(jìn)行智能分層管理的云存儲(chǔ)系統(tǒng),對數(shù)據(jù)進(jìn)行只能分層存儲(chǔ),可以根據(jù)讀取速度的快慢將存儲(chǔ)空間分成不同的存儲(chǔ)層,將讀取速度快的存儲(chǔ)空間上存放經(jīng)常訪問的文件,將一些不經(jīng)常訪問的文件存儲(chǔ)在讀取速度慢的空間,并且可以對其進(jìn)行編碼保存,來節(jié)省空間。本發(fā)明能增加存儲(chǔ)、讀取速度和降低存儲(chǔ)空間的雙重效果。
圖1是分層存儲(chǔ)結(jié)構(gòu)示意2客戶端上傳文件示意3客戶端下載文件示意圖
具體實(shí)施例方式下面結(jié)合附圖對發(fā)明進(jìn)行詳細(xì)說明。如圖1所示,圖中給出一個(gè)存儲(chǔ)控制節(jié)點(diǎn)100和多個(gè)數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)的云存儲(chǔ)系統(tǒng)部分示意圖,使用本智能數(shù)據(jù)分層技術(shù),此云存儲(chǔ)系統(tǒng)的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)通?;旌鲜褂枚喾N數(shù)據(jù)存儲(chǔ)介質(zhì),而同種類的數(shù)據(jù)存儲(chǔ)介質(zhì)組合成同一層的數(shù)據(jù)存儲(chǔ)層是比較好的選擇,當(dāng)然也可以混合使用。如本發(fā)明現(xiàn)今推薦的是,在每個(gè)數(shù)據(jù)存儲(chǔ)結(jié)點(diǎn)中按1: 30: 75的比例配置固態(tài)硬盤(SSD)、SAS硬盤、SATA硬盤,從圖1中可以看出一存儲(chǔ)層101為SSD硬盤、第二存儲(chǔ)層102為SAS硬盤和第三存儲(chǔ)層103為SATA硬盤。當(dāng)然存儲(chǔ)層可以更多,也可以采用其他種類的硬盤。各種相同的數(shù)據(jù)存儲(chǔ)介質(zhì)組成同一存儲(chǔ)層,也可以看成是虛擬存儲(chǔ)池,各個(gè)存儲(chǔ)結(jié)點(diǎn)的數(shù)據(jù)存儲(chǔ)介質(zhì)是共享的,組合成一個(gè)整體,由中央存儲(chǔ)控制節(jié)點(diǎn)統(tǒng)一管理,分配使用。存儲(chǔ)控制節(jié)點(diǎn)100通過智能數(shù)據(jù)分層算法根據(jù)數(shù)據(jù)冷熱度,如采用數(shù)據(jù)分層算法為最近最少使用(LRU)算法,把不同層的存儲(chǔ)介質(zhì)用于存儲(chǔ)不同優(yōu)先級的數(shù)據(jù)。算法采用時(shí)間和次數(shù)兩個(gè)參數(shù)可以算出數(shù)據(jù)熱度的很多,只是LUR算法是比較經(jīng)典的。存儲(chǔ)控制節(jié)點(diǎn)100是云存儲(chǔ)系統(tǒng)的元數(shù)據(jù)管理節(jié)點(diǎn),統(tǒng)一管理文件元數(shù)據(jù),負(fù)責(zé)文件的分塊,文件數(shù)據(jù)塊的存放地選擇并維護(hù)這些文件與數(shù)據(jù)塊的對應(yīng)關(guān)系及文件數(shù)據(jù)塊的存放和數(shù)據(jù)的遷移等工作。所以控制節(jié)點(diǎn)100就是本發(fā)明數(shù)據(jù)分層技術(shù)的控制點(diǎn),它負(fù)責(zé)維護(hù)文件訪問熱度及訪問情況,把并發(fā)訪問數(shù)大的文件調(diào)入第一層進(jìn)行存儲(chǔ),次之的調(diào)入第二層,以次類推。當(dāng)?shù)谝粚哟鎯?chǔ)空間不夠時(shí),控制節(jié)點(diǎn)根據(jù)最近最少使用(LRU)置換算法把部分?jǐn)?shù)據(jù)置換到下一層存儲(chǔ)介質(zhì)中以騰出存儲(chǔ)空間容納新的熱數(shù)據(jù)。在第一層、第二層的數(shù)據(jù)本發(fā)明方案使用云存儲(chǔ)中多副本機(jī)制,保證高的并發(fā)訪問能力和負(fù)載均衡能力及數(shù)據(jù)安全性。在第三層和之后的層如第四層使用磁帶庫等就使用數(shù)據(jù)編碼機(jī)制,保證一份原始數(shù)據(jù)和多份編碼數(shù)據(jù),保證數(shù)據(jù)的安全性而又能提供一般訪問能力。提供云存儲(chǔ)系統(tǒng)的高性、高安全和非常高的存儲(chǔ)性價(jià)比。在本發(fā)明中我們對存儲(chǔ)系統(tǒng)的數(shù)據(jù)以文件的為最小粒度對其優(yōu)先存儲(chǔ)級別進(jìn)行冷熱兩種狀態(tài)分類。對于數(shù)據(jù)冷熱分類的標(biāo)準(zhǔn)可以是這樣的確定的:對于每個(gè)文件都具有訪問時(shí)間和訪問計(jì)數(shù)兩個(gè)屬性,文件的冷熱就是根據(jù)此兩個(gè)文件屬性計(jì)算得到來的。在系統(tǒng)中有一個(gè)配置項(xiàng):文件熱度閥值h_threshold,如果一個(gè)文件的文件熱度值h大于或等于(> =)h_threshold則認(rèn)為此文件為熱文件,否則為冷文件。文件熱度值的計(jì)算為:h =文件訪問計(jì)數(shù)/(當(dāng)前時(shí)間-訪問時(shí)間)。如果文件為熱文件則按照文件的熱度的降序排序優(yōu)先調(diào)入高存儲(chǔ)級別層進(jìn)行數(shù)據(jù)存儲(chǔ),以此達(dá)到數(shù)據(jù)按數(shù)據(jù)冷熱度進(jìn)行分層存儲(chǔ)。(LRU)算法舉例:在本發(fā)明中為了簡化系統(tǒng)的實(shí)現(xiàn)與額外的計(jì)算開銷,把LRU算法做了一定的簡化計(jì)算,因?yàn)橐褜?shù)據(jù)文件進(jìn)行了冷熱度的計(jì)算,也就是說對于每個(gè)文件都具有一個(gè)文件熱度屬性h,在此本發(fā)明認(rèn)為熱度值h越小的文件最近越少使用。現(xiàn)假設(shè)第一層只能存放3G文件數(shù)據(jù),再有4個(gè)文件fa,fb, fc, fd每個(gè)文件的大小都為1G,它們的文件熱度值分別為:5,3,2,8且本次初始時(shí)fa,fb,fc文件都已在第一層存儲(chǔ)中,現(xiàn)在fd文件在第二層,現(xiàn)發(fā)現(xiàn)fd文件熱度為8需要放入第一層進(jìn)行存儲(chǔ),而第一層已滿了,需要把其它的一個(gè)文件置換出來,那我們看fa,fb, fc的文件熱度可知文件fc的文件熱度最小,可知fc是最近最少使用的文件所以把fc文件置換到第二層,之后再把fd存入第一層,完成置換。如圖2為客戶端下載文件示意圖,該圖簡要說明客戶端要訪問云存儲(chǔ)中的數(shù)據(jù)流程,包括如下步驟:S201:客戶端下載文件數(shù)據(jù)請求;客戶端下載文件的請求發(fā)送到控制節(jié)點(diǎn),控制節(jié)查找數(shù)據(jù)存放在何處,然后進(jìn)行讀取,及一些其他操作。
S202:判斷數(shù)據(jù)在不在第一層中;首先控制節(jié)點(diǎn)判斷數(shù)據(jù)是否在第一存儲(chǔ)層中,該層的優(yōu)先存儲(chǔ)級別級別最高,一般是單位時(shí)間內(nèi)訪問次數(shù)靠前的文件才能存放在此層,也可以單純根據(jù)訪問次數(shù)來決定優(yōu)先存儲(chǔ)級別,只是缺少時(shí)間這個(gè)判斷參數(shù)其會(huì)帶來一定缺陷。要讀取的文件在此層中就跳轉(zhuǎn)到S205讀取該數(shù)據(jù),讀取文件的同時(shí)/之前/之后程序也執(zhí)行S206步驟及其后面步驟;要讀取的數(shù)據(jù)不在此層中則執(zhí)行S203步驟。S203:判斷數(shù)據(jù)在不在第二層中;要讀取的文件在此層中就跳轉(zhuǎn)到S205讀取該數(shù)據(jù),讀取文件的同時(shí)/之前/之后程序也執(zhí)行S206步驟及其后面步驟;要讀取的數(shù)據(jù)不在此層中則執(zhí)行S204步驟。S204:判斷數(shù)據(jù)在不在第三層中;要讀取的文件在此層中就跳轉(zhuǎn)到S205讀取該數(shù)據(jù),讀取文件的同時(shí)/之前/之后程序也執(zhí)行S206步驟及其后面步驟;如果要讀取的文件不在此層中,那么就是該文件在整個(gè)存儲(chǔ)系統(tǒng)中就不存在,會(huì)有其他信息反饋給客戶端,在此不做詳細(xì)說明。S205:讀取數(shù)據(jù)文件;將客戶端要讀取的數(shù)據(jù)文件傳輸給客戶端,然后此過程結(jié)束。S206:更新文件計(jì)數(shù);讀取此文件一次,此文件的訪問次數(shù)增加一次,在此過程中還可以根據(jù)設(shè)定的條件判斷處理一下歷史訪問的次數(shù)是否應(yīng)該全部計(jì)數(shù),這個(gè)判斷是以時(shí)間為參數(shù)來進(jìn)行的。S207:判斷文件計(jì)數(shù)是否超過此層閥值;文件計(jì)數(shù)的閥值也就是優(yōu)先存儲(chǔ)級別,無論是一定時(shí)間內(nèi)的訪問計(jì)數(shù),還是全部的歷史訪問計(jì)數(shù)設(shè)定的優(yōu)先存儲(chǔ)級別計(jì)算方法,都有一個(gè)閥值。如果此文件的優(yōu)先存儲(chǔ)級別比當(dāng)前存儲(chǔ)層更高,則執(zhí)行S208,否則此過程結(jié)束。S208:把此數(shù)據(jù)文件調(diào)入更高一層。優(yōu)先存儲(chǔ)級別的各層之間至少是以訪問一次為限來進(jìn)行分層,所以只能調(diào)入更高的一層,而不能進(jìn)行跳級跳層,但實(shí)際應(yīng)用中也可以根據(jù)設(shè)定條件而不這么做,因?yàn)閰⒖嫉膮?shù)還有時(shí)間和其他。如圖3所示為客戶端上傳文件示意圖,本圖為分三個(gè)存儲(chǔ)層的情況,其他層數(shù)可以參考推出實(shí)現(xiàn)方案。從圖中體現(xiàn)本發(fā)明上傳文件的一個(gè)主要流程,包括如下步驟:S301:客戶端上傳文件數(shù)據(jù)請求;云存儲(chǔ)系統(tǒng)中,客戶端需要上傳數(shù)據(jù)到云端,系統(tǒng)分配給你存儲(chǔ)區(qū)域進(jìn)行存儲(chǔ),如在虛擬機(jī)上的顯現(xiàn)出來的是用戶在向自己的主機(jī)上存儲(chǔ)文件。S302:第二層存儲(chǔ)介質(zhì)是否還有空間存儲(chǔ)該上傳文件;此步驟是個(gè)判斷過程,如果第二層有存儲(chǔ)空間就將文件直接存儲(chǔ)到該存儲(chǔ)層,即跳轉(zhuǎn)到S304 ;如果第二存儲(chǔ)層沒有足夠存儲(chǔ)該文件的存儲(chǔ)空間就跳轉(zhuǎn)到S303。S 303:按LRU算法把部分?jǐn)?shù)據(jù)轉(zhuǎn)移到第三存儲(chǔ)層騰出存儲(chǔ)空間;第二存儲(chǔ)層空間滿了,用LRU算法算出已存儲(chǔ)文件的優(yōu)先存儲(chǔ)級別,與當(dāng)前存儲(chǔ)層優(yōu)先存儲(chǔ)級別不符的,此時(shí)的不符一般都是比當(dāng)前存儲(chǔ)層的優(yōu)先存儲(chǔ)級別低的,就將其轉(zhuǎn)移到第三存儲(chǔ)層。當(dāng)然還會(huì)有特殊情況,如果第二存儲(chǔ)層文件都符合本層優(yōu)先存儲(chǔ)級別,該如何處理?可以直接把該文件存儲(chǔ)到第一或第三存儲(chǔ)層,也可以提高本層的優(yōu)先存儲(chǔ)級別,然后再看看是否所有文件都符合本層的優(yōu)先優(yōu)先存儲(chǔ)級別,可以重復(fù)操作下去。S304:把上傳文件存入第二存儲(chǔ)層。存儲(chǔ)在第二存儲(chǔ)層是會(huì)因情況不同而不同,根據(jù)各個(gè)存儲(chǔ)層大小和存儲(chǔ)層數(shù)的多少等情況,可以做出不同的選擇。甚至還可以根據(jù)文件的屬性等因素做出選擇。以上所揭露的僅為本發(fā)明的較佳實(shí)施例而已,當(dāng)然不能以此來限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
權(quán)利要求
1.一種對數(shù)據(jù)進(jìn)行智能分層管理的云存儲(chǔ)系統(tǒng),包括一個(gè)或一個(gè)以上控制節(jié)點(diǎn)和多個(gè)存儲(chǔ)節(jié)點(diǎn),一個(gè)控制節(jié)點(diǎn)控制兩個(gè)以上存儲(chǔ)節(jié)點(diǎn),一個(gè)存儲(chǔ)節(jié)點(diǎn)只能被一個(gè)控制節(jié)點(diǎn)控制,控制節(jié)點(diǎn)統(tǒng)一管理存儲(chǔ)節(jié)點(diǎn)上的文件元數(shù)據(jù)、文件的分塊、文件數(shù)據(jù)塊的存放地,選擇并維護(hù)這些文件與數(shù)據(jù)塊的對應(yīng)關(guān)系及文件數(shù)據(jù)塊的存放和數(shù)據(jù)的遷移,其特征在于:所述控制節(jié)點(diǎn)中至少有一個(gè)控制節(jié)點(diǎn)把其控制的存儲(chǔ)節(jié)點(diǎn)分成兩個(gè)以上存儲(chǔ)層進(jìn)行管理,一個(gè)存儲(chǔ)節(jié)點(diǎn)可以只屬于一個(gè)存儲(chǔ)層,也可以屬于多個(gè)存儲(chǔ)層,不同的存儲(chǔ)層具有不同的優(yōu)先存儲(chǔ)級別;初始存儲(chǔ)的文件保存在其中一個(gè)存儲(chǔ)層上;對已存儲(chǔ)的文件根據(jù)訪問次數(shù)作為參數(shù)根據(jù)設(shè)定的規(guī)則計(jì)算出優(yōu)先存儲(chǔ)級別,當(dāng)一個(gè)文件的優(yōu)先存儲(chǔ)級別與當(dāng)前存儲(chǔ)層不符時(shí),如果與其優(yōu)先存儲(chǔ)級別相符合的存儲(chǔ)層有足夠存儲(chǔ)空間,則將該文件移動(dòng)存儲(chǔ)到此存儲(chǔ)層。
2.根據(jù)權(quán)利要求1所述的云存儲(chǔ)系統(tǒng),其特征在于:所述的參數(shù)還包括時(shí)間。
3.根據(jù)權(quán)利要求2所述的云存儲(chǔ)系統(tǒng),其特征在于:所述的規(guī)則為最近最少使用算法。
4.根據(jù)權(quán)利要求1所述的云存儲(chǔ)系統(tǒng),其特征在于:所述的兩個(gè)以上存儲(chǔ)層為三個(gè)存儲(chǔ)層,每個(gè)存儲(chǔ)層采用不同的硬盤,根據(jù)優(yōu)先存儲(chǔ)級別高低的順序在這三層中按I: 30: 75的比例配置固態(tài)硬盤、SAS硬盤、SATA硬盤。
5.根據(jù)權(quán)利要求1所述的云存儲(chǔ)系統(tǒng),其特征在于:所述的存儲(chǔ)層為四層以上,按優(yōu)先存儲(chǔ)級別進(jìn)行分層,第一存儲(chǔ)層的優(yōu)先存儲(chǔ)級別要求最高,第二存儲(chǔ)層比第一存儲(chǔ)層優(yōu)先存儲(chǔ)級別低,依次下面各存儲(chǔ)層比其前面存儲(chǔ)層優(yōu)先存儲(chǔ)級別低,比后面優(yōu)先存儲(chǔ)級別高,其中第一存儲(chǔ)層和第二存儲(chǔ)層采用多副本機(jī)制,第三存儲(chǔ)層、第四存儲(chǔ)層之后使用數(shù)據(jù)編碼機(jī)制,保證一份原始數(shù)據(jù)和多份編碼數(shù)據(jù)。
6.根據(jù)權(quán)利要求1、2、3、4或5所述的云存儲(chǔ)系統(tǒng),其特征在于:所述初始存儲(chǔ)的文件保存在一個(gè)固定存儲(chǔ)層上。
7.根據(jù)權(quán)利要求6所述的云存儲(chǔ)系統(tǒng),其特征在于:所述的一個(gè)固定存儲(chǔ)層,如果該存儲(chǔ)層在存儲(chǔ)前發(fā)現(xiàn)沒有足夠空間供存儲(chǔ)所述初始存儲(chǔ)的文件,就運(yùn)用LRU算法計(jì)算該存儲(chǔ)層已存儲(chǔ)文件的優(yōu)先存儲(chǔ)級別,若有文件的優(yōu)先存儲(chǔ)級別與此層上的優(yōu)先存儲(chǔ)級別不符,將其轉(zhuǎn)移至與其優(yōu)先存儲(chǔ)級別相符合的存儲(chǔ)層。
8.根據(jù)權(quán)利要求6所述的云存儲(chǔ)系統(tǒng),其特征在于:所述的固定存儲(chǔ)層為第二存儲(chǔ)層,第二存儲(chǔ)層的優(yōu)先存儲(chǔ)級別僅次于第一存儲(chǔ)層。
9.根據(jù)權(quán)利要求1所述的云存儲(chǔ)系統(tǒng),其特征在于:所述的存儲(chǔ)層多少、大小及每個(gè)存儲(chǔ)層的優(yōu)先存儲(chǔ)級別范圍由系統(tǒng)自動(dòng)設(shè)定或用戶進(jìn)行設(shè)定。
10.根據(jù)權(quán)利要求1所述的云存儲(chǔ)系統(tǒng),其特征在于:所述的優(yōu)先存儲(chǔ)級別的一定范圍值與某一特定存儲(chǔ)層是相對應(yīng)的,其中具有最高優(yōu)先存儲(chǔ)級別的存儲(chǔ)層存儲(chǔ)文件的優(yōu)先存儲(chǔ)級別根據(jù)存儲(chǔ)空間的存儲(chǔ)情況變化,變化規(guī)律為如果此存儲(chǔ)層的文件在一定時(shí)間內(nèi)保持在一定數(shù)量以上的存儲(chǔ)空間空閑,則此層的優(yōu)先存儲(chǔ)級別會(huì)降低;如果此存儲(chǔ)層的存儲(chǔ)空間已經(jīng)剩余量小于一定值,且已存儲(chǔ)的文件全部是符合此層存儲(chǔ)優(yōu)先級要求的文件,則此存儲(chǔ)層的存儲(chǔ)優(yōu)先級別升高。
全文摘要
本發(fā)明一種對數(shù)據(jù)進(jìn)行智能分層管理的云存儲(chǔ)系統(tǒng),包括一個(gè)或一個(gè)以上控制節(jié)點(diǎn)和多個(gè)存儲(chǔ)節(jié)點(diǎn),一個(gè)控制節(jié)點(diǎn)控制兩個(gè)以上存儲(chǔ)節(jié)點(diǎn),所述控制節(jié)點(diǎn)中至少有一個(gè)控制節(jié)點(diǎn)把其控制的存儲(chǔ)節(jié)點(diǎn)分成兩個(gè)以上存儲(chǔ)層進(jìn)行管理,一個(gè)存儲(chǔ)節(jié)點(diǎn)可以只屬于一個(gè)存儲(chǔ)層,也可以屬于多個(gè)存儲(chǔ)層,不同的存儲(chǔ)層具有不同的優(yōu)先存儲(chǔ)級別;對已存儲(chǔ)的文件根據(jù)訪問次數(shù)作為參數(shù)根據(jù)設(shè)定的規(guī)則計(jì)算出優(yōu)先存儲(chǔ)級別,當(dāng)一個(gè)文件的優(yōu)先存儲(chǔ)級別與當(dāng)前存儲(chǔ)層不符時(shí),則將該文件移動(dòng)存儲(chǔ)到與當(dāng)前優(yōu)先級相符的存儲(chǔ)層。不同的存儲(chǔ)層采用不同的存儲(chǔ)介質(zhì),以此可以獲取非常高的存儲(chǔ)性價(jià)比;且此發(fā)明使用于云存儲(chǔ)系統(tǒng),可以充分和云存儲(chǔ)系統(tǒng)相結(jié)合,加強(qiáng)了云存儲(chǔ)系統(tǒng)的效能。
文檔編號G06F3/06GK103095805SQ201210558279
公開日2013年5月8日 申請日期2012年12月20日 優(yōu)先權(quán)日2012年12月20日
發(fā)明者鄒紅才, 葛春, 羅乘風(fēng) 申請人:江蘇辰云信息科技有限公司