磁盤(pán)休眠處理方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種磁盤(pán)休眠處理方法及裝置。
【背景技術(shù)】
[0002]糾刪碼(Erasure Coding,簡(jiǎn)稱為EC)是一種數(shù)據(jù)保護(hù)方法,它將數(shù)據(jù)分割成片段,把冗余數(shù)據(jù)塊擴(kuò)展、編碼,并將其存儲(chǔ)在不同的位置,比如,磁盤(pán)、存儲(chǔ)節(jié)點(diǎn)或者其它地理位置。它會(huì)創(chuàng)建一個(gè)數(shù)學(xué)函數(shù)來(lái)描述一組數(shù)字,這樣就可以檢查它們的準(zhǔn)確性,而且一旦其中一個(gè)數(shù)字丟失,還可以恢復(fù)。多項(xiàng)式插值(polynomial interpolat1n)或過(guò)采樣(oversampling)就是糾刪碼所使用的關(guān)鍵技術(shù)。
[0003]EC模式可以用于有大量數(shù)據(jù)和任何需要容錯(cuò)的應(yīng)用程序或系統(tǒng)中,比如,磁盤(pán)陣列系統(tǒng)、數(shù)據(jù)網(wǎng)格、分布式存儲(chǔ)應(yīng)用程序、對(duì)象存儲(chǔ)或歸檔存儲(chǔ)。目前,糾刪碼的一個(gè)常見(jiàn)的使用案例是基于對(duì)象的云存儲(chǔ)。
[0004]在相關(guān)技術(shù)中,磁盤(pán)陣列磁盤(pán)休眠是通過(guò)經(jīng)驗(yàn)配置,選擇在系統(tǒng)讀操作較少的固定時(shí)間進(jìn)行磁盤(pán)休眠,這樣在休眠過(guò)程中也會(huì)有文件訪問(wèn),在EC模式下表現(xiàn)尤為明顯。因?yàn)樾菝邥?huì)導(dǎo)致文件訪問(wèn)的計(jì)算量大大地增加,造成不必要的分片修復(fù)耗費(fèi)了系統(tǒng)大量性能,提高了維護(hù)成本,尤其EC環(huán)境表現(xiàn)尤為明顯。
[0005]因此,在相關(guān)技術(shù)的磁盤(pán)休眠方案中,存在以下缺點(diǎn):磁盤(pán)休眠只能在固定時(shí)間對(duì)磁盤(pán)進(jìn)行休眠。不能保證長(zhǎng)期運(yùn)行過(guò)程中,系統(tǒng)一直在固定時(shí)間段空閑,或者空閑的時(shí)間段沒(méi)有被合理利用。從而使磁盤(pán)休眠功能處于基本不可用狀態(tài)。對(duì)于EC環(huán)境,由于存儲(chǔ)規(guī)律的不同,休眠的磁盤(pán)也會(huì)被訪問(wèn)到。這樣就造成了大量不必要的分片修復(fù),耗費(fèi)了大量的系統(tǒng)性能?,F(xiàn)有技術(shù)的缺點(diǎn)表現(xiàn)尤為嚴(yán)重。
[0006]因此,在相關(guān)技術(shù)中,磁盤(pán)休眠技術(shù)中存在的只能固定時(shí)間休眠和不必要分片修復(fù)造成的系統(tǒng)性能浪費(fèi)的缺陷。
【發(fā)明內(nèi)容】
[0007]本發(fā)明提供了一種磁盤(pán)休眠處理方法及裝置,以至少解決相關(guān)技術(shù)中,磁盤(pán)休眠技術(shù)中存在的只能固定時(shí)間休眠和不必要分片修復(fù)造成的系統(tǒng)性能浪費(fèi)的缺陷。
[0008]根據(jù)本發(fā)明的一個(gè)方面,提供了一種磁盤(pán)休眠處理方法,包括:統(tǒng)計(jì)對(duì)第一磁盤(pán)中各個(gè)存儲(chǔ)塊chunk進(jìn)行訪問(wèn)的訪問(wèn)熱度;判斷對(duì)chunk進(jìn)行訪問(wèn)的所述訪問(wèn)熱度是否達(dá)到預(yù)定閾值;在判斷結(jié)果為是的情況下,將所述第一磁盤(pán)中訪問(wèn)熱度超過(guò)所述預(yù)定閾值的chunk遷移到第二磁盤(pán),其中,所述第二磁盤(pán)的性能高于第一磁盤(pán);對(duì)所述第一磁盤(pán)進(jìn)行休眠。
[0009]優(yōu)選地,在所述第一磁盤(pán)存在至少兩個(gè)的情況下,對(duì)所述第一磁盤(pán)進(jìn)行休眠包括:在預(yù)定時(shí)間內(nèi)采用預(yù)定輪流休眠的方式對(duì)所述第一磁盤(pán)進(jìn)行休眠。
[0010]優(yōu)選地,在對(duì)所述第一磁盤(pán)進(jìn)行休眠之后,還包括:在滿足以下條件至少之一時(shí),喚醒所述第一磁盤(pán):所述第二磁盤(pán)達(dá)到預(yù)定存儲(chǔ)閾值、在所述第一磁盤(pán)中存在超過(guò)所述預(yù)定閾值的chunk。
[0011]優(yōu)選地,在所述第二磁盤(pán)達(dá)到所述預(yù)定存儲(chǔ)閾值的情況下,喚醒所述第一磁盤(pán)包括:對(duì)所述第二磁盤(pán)中的chunk,依據(jù)所述chunk的訪問(wèn)熱度的高低進(jìn)行排序;將訪問(wèn)熱度排在隊(duì)列尾端的chunk遷移到所述第一磁盤(pán)。
[0012]優(yōu)選地,將所述第一磁盤(pán)中訪問(wèn)熱度超過(guò)所述預(yù)定閾值的chunk遷移到所述第二磁盤(pán)包括:對(duì)統(tǒng)計(jì)所述第一磁盤(pán)中的所述chunk,依據(jù)所述訪問(wèn)熱度進(jìn)行排序;將超過(guò)所述預(yù)定閾值的chunk遷移到所述第二磁盤(pán)。
[0013]根據(jù)本發(fā)明的另一方面,提供了一種磁盤(pán)休眠處理裝置,包括:統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)對(duì)第一磁盤(pán)中各個(gè)存儲(chǔ)塊chunk進(jìn)行訪問(wèn)的訪問(wèn)熱度;判斷模塊,用于判斷對(duì)chunk進(jìn)行訪問(wèn)的所述訪問(wèn)熱度是否達(dá)到預(yù)定閾值;遷移模塊,用于在所述判斷模塊的判斷結(jié)果為是的情況下,將所述第一磁盤(pán)中訪問(wèn)熱度超過(guò)所述預(yù)定閾值的chunk遷移到第二磁盤(pán),其中,所述第二磁盤(pán)的性能高于第一磁盤(pán);休眠模塊,用于對(duì)所述第一磁盤(pán)進(jìn)行休眠。
[0014]優(yōu)選地,所述休眠模塊包括:休眠單元,用于在所述第一磁盤(pán)存在至少兩個(gè)的情況下,在預(yù)定時(shí)間內(nèi)采用預(yù)定輪流休眠的方式對(duì)所述第一磁盤(pán)進(jìn)行休眠。
[0015]優(yōu)選地,該裝置還包括:喚醒模塊,用于在滿足以下條件至少之一時(shí),喚醒所述第一磁盤(pán):所述第二磁盤(pán)達(dá)到預(yù)定存儲(chǔ)閾值、在所述第一磁盤(pán)中存在超過(guò)所述預(yù)定閾值的chunk。
[0016]優(yōu)選地,所述喚醒模塊包括:第一排序單元,用于在所述第二磁盤(pán)達(dá)到所述預(yù)定存儲(chǔ)閾值的情況下,對(duì)所述第二磁盤(pán)中的chunk,依據(jù)所述chunk的訪問(wèn)熱度的高低進(jìn)行排序;第一遷移單元,用于將訪問(wèn)熱度排在隊(duì)列尾端的chunk遷移到所述第一磁盤(pán)。
[0017]優(yōu)選地,所述遷移模塊包括:第二排序單元,用于對(duì)統(tǒng)計(jì)所述第一磁盤(pán)中的所述chunk,依據(jù)所述訪問(wèn)熱度進(jìn)行排序;第二遷移單元,用于將超過(guò)所述預(yù)定閾值的chunk遷移到所述第二磁盤(pán)。
[0018]通過(guò)本發(fā)明,采用統(tǒng)計(jì)對(duì)第一磁盤(pán)中各個(gè)存儲(chǔ)塊chunk進(jìn)行訪問(wèn)的訪問(wèn)熱度;判斷對(duì)chunk進(jìn)行訪問(wèn)的所述訪問(wèn)熱度是否達(dá)到預(yù)定閾值;在判斷結(jié)果為是的情況下,將所述第一磁盤(pán)中訪問(wèn)熱度超過(guò)所述預(yù)定閾值的chunk遷移到第二磁盤(pán),其中,所述第二磁盤(pán)的性能高于第一磁盤(pán);對(duì)所述第一磁盤(pán)進(jìn)行休眠,解決了相關(guān)技術(shù)中,磁盤(pán)休眠技術(shù)中存在的只能固定時(shí)間休眠和不必要分片修復(fù)造成的系統(tǒng)性能浪費(fèi)的缺陷,進(jìn)而達(dá)到了實(shí)現(xiàn)磁盤(pán)的動(dòng)態(tài)休眠,提高磁盤(pán)系統(tǒng)性能的效果。
【附圖說(shuō)明】
[0019]此處所說(shuō)明的附圖用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā)明的示意性實(shí)施例及其說(shuō)明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:
[0020]圖1是根據(jù)本發(fā)明實(shí)施例的磁盤(pán)休眠處理方法的流程圖;
[0021]圖2是根據(jù)本發(fā)明實(shí)施例的磁盤(pán)休眠處理裝置的結(jié)構(gòu)框圖;
[0022]圖3是根據(jù)本發(fā)明實(shí)施例的磁盤(pán)休眠處理裝置中休眠模塊28的優(yōu)選結(jié)構(gòu)框圖;
[0023]圖4是根據(jù)本發(fā)明實(shí)施例的磁盤(pán)休眠處理裝置的優(yōu)選結(jié)構(gòu)框圖;
[0024]圖5是根據(jù)本發(fā)明實(shí)施例的磁盤(pán)休眠處理裝置中喚醒模塊42的優(yōu)選結(jié)構(gòu)框圖;
[0025]圖6是根據(jù)本發(fā)明實(shí)施例的磁盤(pán)休眠處理裝置中遷移模塊26的優(yōu)選結(jié)構(gòu)框圖;
[0026]圖7是根據(jù)本發(fā)明優(yōu)選實(shí)施例的分級(jí)存儲(chǔ)動(dòng)態(tài)休眠磁盤(pán)系統(tǒng)架構(gòu)示意圖;
[0027]圖8是根據(jù)本發(fā)明優(yōu)選實(shí)施例的磁盤(pán)動(dòng)態(tài)休眠方法的交互示意圖;
[0028]圖9是根據(jù)本發(fā)明優(yōu)選實(shí)施例的磁盤(pán)動(dòng)態(tài)休眠方法的流程圖;
[0029]圖10是根據(jù)本發(fā)明優(yōu)選實(shí)施例的磁盤(pán)動(dòng)態(tài)喚醒方法的交互示意圖;
[0030]圖11是根據(jù)本發(fā)明優(yōu)選實(shí)施例的磁盤(pán)動(dòng)態(tài)喚醒方法的流程圖。
【具體實(shí)施方式】
[0031]下文中將參考附圖并結(jié)合實(shí)施例來(lái)詳細(xì)說(shuō)明本發(fā)明。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。
[0032]在本實(shí)施例中提供了一種磁盤(pán)休眠處理方法,圖1是根據(jù)本發(fā)明實(shí)施例的磁盤(pán)休眠處理方法的流程圖,如圖1所示,該流程包括如下步驟:
[0033]步驟S102,統(tǒng)計(jì)對(duì)第一磁盤(pán)中各個(gè)存儲(chǔ)塊chunk進(jìn)行訪問(wèn)的訪問(wèn)熱度;
[0034]步驟S104,判斷對(duì)chunk進(jìn)行訪問(wèn)的訪問(wèn)熱度是否達(dá)到預(yù)定閾值;
[0035]步驟S106,在判斷結(jié)果為是的情況下,將第一磁盤(pán)中訪問(wèn)熱度超過(guò)預(yù)定閾值的chunk遷移到第二磁盤(pán),其中,第二磁盤(pán)的性能高于第一磁盤(pán);
[0036]步驟S108,對(duì)第一磁盤(pán)進(jìn)行休眠。
[0037]通過(guò)上述步驟,依據(jù)磁盤(pán)中的chunk的訪問(wèn)熱度來(lái)實(shí)現(xiàn)chunk在磁盤(pán)間的遷移,使得訪問(wèn)高的chunk能夠遷移到性能高的磁盤(pán)中,訪問(wèn)低的chunk甚至不訪問(wèn)的chunk可以集中到不熱的磁盤(pán),進(jìn)而可以將該熱度不高的磁盤(pán)進(jìn)行休眠,不僅解決了相關(guān)技術(shù)中,磁盤(pán)休眠技術(shù)中存在的只能固定時(shí)間休眠和不必要分片修復(fù)造成的系統(tǒng)性能浪費(fèi)的缺陷,進(jìn)而達(dá)到了實(shí)現(xiàn)磁盤(pán)的動(dòng)態(tài)休眠,提高磁盤(pán)系統(tǒng)性能的效果。
[0038]需要