專利名稱:一種基于塊級(jí)別云存儲(chǔ)負(fù)載均衡優(yōu)化的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)存儲(chǔ)技術(shù)領(lǐng)域,尤其涉及一種基于負(fù)載均衡的多卷服務(wù)器的塊級(jí)別云存儲(chǔ)優(yōu)化管理的裝置。
背景技術(shù):
云存儲(chǔ)是云計(jì)算概念的一個(gè)延伸和發(fā)展,它指的是通過集群技術(shù)、分布式文件系統(tǒng)、網(wǎng)格技術(shù)等,將網(wǎng)絡(luò)中各種異構(gòu)的存儲(chǔ)設(shè)備集合起來協(xié)同工作,對(duì)外向用戶提供安全、可靠、高效的數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)訪問服務(wù)。云存儲(chǔ)按其提供的存儲(chǔ)層面不同,可以分為兩大類:文件級(jí)別云存儲(chǔ)和塊級(jí)別云存儲(chǔ)。文件級(jí)別云存儲(chǔ)主要指的是分布式文件系統(tǒng),它通過網(wǎng)絡(luò)文件系統(tǒng)訪問協(xié)議提供文件級(jí)的存儲(chǔ)訪問服務(wù);塊級(jí)別云存儲(chǔ)則是通過小型計(jì)算機(jī)系統(tǒng)接口或者高速光纖通道,向用戶提供原始?jí)K級(jí)別存儲(chǔ)資源。塊級(jí)別云存儲(chǔ)具有通用性高、靈活性強(qiáng)等特點(diǎn),因此,它在文件存儲(chǔ)、數(shù)據(jù)庫存儲(chǔ)、虛擬機(jī)文件系統(tǒng)卷等方面有著廣泛的應(yīng)用。但是現(xiàn)有的塊級(jí)別存儲(chǔ)產(chǎn)品也存在一些自身的不足:1.系統(tǒng)中存在存儲(chǔ)服務(wù)器瓶頸,嚴(yán)重影響了系統(tǒng)整體性能和可靠性;2.沒有提供斷點(diǎn)續(xù)傳機(jī)制,用戶在連接斷開后只能重新上傳數(shù)據(jù),既浪費(fèi)用戶時(shí)間,也增加系統(tǒng)資源開銷;3.缺乏細(xì)化統(tǒng)一管理異構(gòu)存儲(chǔ)設(shè)備,不能提供分級(jí)存儲(chǔ)的策略,影響系統(tǒng)的I/O吞吐率和性能。
發(fā)明內(nèi)容
針對(duì)上述傳統(tǒng)的云存儲(chǔ)系統(tǒng)中存在的問題,需要提出一種能夠減少系統(tǒng)單點(diǎn)故障,提高系統(tǒng)的整體性能和可靠性的裝置。需要對(duì)其存在的負(fù)載均衡局部最優(yōu)、斷點(diǎn)重傳和缺乏細(xì)化統(tǒng)一管理異構(gòu)存儲(chǔ)設(shè)備等問題進(jìn)行了一定的改進(jìn)。該方法將遺傳算法中的變異部分加入到負(fù)載均衡策略中,盡可能地提高該策略搜索全局最優(yōu)解的準(zhǔn)確性。同時(shí)設(shè)計(jì)了一種面向iSCSI的斷點(diǎn)續(xù)傳功能,在重新選擇卷服務(wù)器進(jìn)行iSCSI重連時(shí),正在上傳數(shù)據(jù)的用戶無需將數(shù)據(jù)重新上傳,系統(tǒng)自動(dòng)會(huì)從斷點(diǎn)處繼續(xù)上傳,提高了系統(tǒng)的可靠性。通過利用現(xiàn)有的異構(gòu)存儲(chǔ)環(huán)境,提出了一種基于卷生命周期的分級(jí)存儲(chǔ)管理機(jī)制,充分利用不同存儲(chǔ)設(shè)備的優(yōu)勢(shì)和特點(diǎn),進(jìn)一步提高系統(tǒng)訪問效率。本發(fā)明關(guān)注于通過改進(jìn)傳統(tǒng)云存儲(chǔ)的負(fù)載均衡策略,優(yōu)化工作包括:對(duì)卷服務(wù)器負(fù)載和性能進(jìn)行建模,并在此基礎(chǔ)上提出了基于機(jī)器性能的靜態(tài)、動(dòng)態(tài)負(fù)載均衡策略。靜態(tài)負(fù)載均衡策略通過工作中的卷服務(wù)器選擇,避免系統(tǒng)進(jìn)入負(fù)載不均衡狀態(tài)。動(dòng)態(tài)負(fù)載均衡策略通過遺傳算法決定iSCSI連接的最佳部署方式,使得云存儲(chǔ)系統(tǒng)在系統(tǒng)中卷服務(wù)器處于負(fù)載不均衡狀態(tài)時(shí),根據(jù)遺傳算法的模擬結(jié)果均衡各卷服務(wù)器的負(fù)載;通過設(shè)計(jì)了一種基于iSCSI的斷點(diǎn)續(xù)傳功能,使得用戶在連接重置后,仍然能夠繼續(xù)上傳自己未傳完的數(shù)據(jù)而不必重新上傳,減少了系統(tǒng)的負(fù)擔(dān),提高了系統(tǒng)的可靠性;同時(shí)本裝置設(shè)計(jì)了一種基于卷生命周期的分級(jí)存儲(chǔ)管理機(jī)制,能夠根據(jù)存儲(chǔ)資源的冷熱程度,自動(dòng)將將高訪問頻率的數(shù)據(jù)存儲(chǔ)在高性能和高成本的存儲(chǔ)設(shè)備上,不經(jīng)常訪問的數(shù)據(jù)存儲(chǔ)在低性能和低成本的存儲(chǔ)設(shè)備上,使得存儲(chǔ)系統(tǒng)的成本趨于價(jià)格低的設(shè)備,節(jié)省存儲(chǔ)成本,提高數(shù)據(jù)訪問效率。本發(fā)明的基本步驟是:
(I)遺傳算法動(dòng)態(tài)負(fù)載均衡策略
1.將系統(tǒng)選出的兩臺(tái)需要進(jìn)行負(fù)載均衡的卷服務(wù)器上的iSCSI連接進(jìn)行編碼,編碼成一段0/1字符串,并把它作為初始染色體S。隨后對(duì)初始染色體S進(jìn)行k次變異,產(chǎn)生k個(gè)后代S1, S2,…,Sk作為初始種群。2.分別計(jì)算出種群中所有個(gè)體的適應(yīng)度值和它們的積累概率。為了防止優(yōu)良基因個(gè)體被強(qiáng)制破壞,本發(fā)明采用精英保留策略,即每次產(chǎn)生子代后,就與保留的精英個(gè)體進(jìn)行比較,保留適應(yīng)度值高的個(gè)體作為精英。3.用輪盤賭選擇法選擇出k個(gè)后代,并進(jìn)行交叉變異等一系列操作。重復(fù)上述過程,直至達(dá)到限定代數(shù)。4.根據(jù)上述步驟所得的編碼,對(duì)兩臺(tái)卷服務(wù)器的iSCSI連接進(jìn)行重新布置。(2) iSCSI 斷點(diǎn)續(xù)傳
1.當(dāng)用戶將某文件上傳到iSCSI掛載的卷上時(shí),先根據(jù)文件的源地址和目標(biāo)地址在日志文件中尋找是否有對(duì)應(yīng)的記錄。2.如果日志中沒有記錄,則表示該文件為首次上傳,那么將會(huì)在日志文件中記錄該文件的源地址和目標(biāo)地址,待上傳完成后將此記錄刪除。
3.如果日志文件中有相對(duì)應(yīng)的記錄,則表明該文件為續(xù)傳,那么先根據(jù)記錄中的目標(biāo)地址,用相應(yīng)的函數(shù)計(jì)算出已上傳文件的大小。4.設(shè)置讀指針至斷點(diǎn)后一字節(jié),將未上傳部分讀入緩沖區(qū),同時(shí),設(shè)置寫指針至目標(biāo)文件末尾,將緩沖區(qū)數(shù)據(jù)寫入。5.文件上傳完畢后,刪除日志文件中對(duì)應(yīng)記錄。(3)分級(jí)存儲(chǔ)管理機(jī)制
1.當(dāng)系統(tǒng)滿足卷遷移的某一個(gè)條件時(shí),卷遷移執(zhí)行器(VMT)就能夠檢測(cè)到并隨即被觸發(fā),它會(huì)向價(jià)值判定管理器(VVJM)發(fā)送一個(gè)獲取遷移卷信息的請(qǐng)求。2.卷價(jià)值判定管理器(VVJM)定時(shí)地從卷元數(shù)據(jù)庫中獲取卷實(shí)時(shí)信息,并利用一定的策略不斷地更新完善它所維護(hù)的遷移隊(duì)列。當(dāng)卷價(jià)值判定管理器(VVJM)收到獲取遷移卷信息的請(qǐng)求后,取出遷移隊(duì)列中隊(duì)首的卷的信息,將它發(fā)送給卷使用狀況檢測(cè)器(VSD)進(jìn)行檢測(cè)卷現(xiàn)在的使用狀況。3.如果卷使用狀況檢測(cè)器(VSD)檢測(cè)到該卷正在被用戶使用,則向VVJM發(fā)送反饋,請(qǐng)求繼續(xù)發(fā)送遷移卷信息,直至尋找到一個(gè)未在使用的最為合理的卷。4.卷使用狀況檢測(cè)器(VSD)將檢測(cè)過使用狀況的卷的信息發(fā)送至卷服務(wù)創(chuàng)建器(VME),由卷服務(wù)創(chuàng)建器(VME)來執(zhí)行最終的遷移工作。5.卷服務(wù)創(chuàng)建器(VME)會(huì)按照創(chuàng)建新卷一復(fù)制內(nèi)容一刪除舊卷一更新卷元數(shù)據(jù)服務(wù)器這幾個(gè)步驟來對(duì)卷進(jìn)行遷移,完成后向系統(tǒng)返回相應(yīng)的完成信息。6.卷使用情況收集器(VUC)子模塊將實(shí)時(shí)監(jiān)控用戶對(duì)于卷的訪問情況,并將卷訪問信息及時(shí)更新至卷元數(shù)據(jù)服務(wù)器。本發(fā)明的有益效果是:1.本發(fā)明通過在存儲(chǔ)策略中加入遺傳算法,實(shí)現(xiàn)系統(tǒng)的動(dòng)態(tài)負(fù)載均衡,能有效的減少系統(tǒng)開銷,提高系統(tǒng)的讀寫吞吐率,加快系統(tǒng)的平均I/o響應(yīng)時(shí)間。2.本發(fā)明設(shè)計(jì)了一種iSCSI的斷點(diǎn)續(xù)傳功能,能讓用戶在連接重置后不必重新上傳數(shù)據(jù),減少了系統(tǒng)的開銷,提高了系統(tǒng)的可靠性。3.本發(fā)明充分利用了系統(tǒng)現(xiàn)有的異構(gòu)資源,在后端設(shè)計(jì)了基于卷生命周期的分級(jí)存儲(chǔ)管理機(jī)制,能有效的提高系統(tǒng)的I/o吞吐量,加快系統(tǒng)的響應(yīng)時(shí)間。4.本發(fā)明可用于計(jì)算機(jī)存儲(chǔ)技術(shù)領(lǐng)域中解決云存儲(chǔ)系統(tǒng)的負(fù)載均衡問題。
圖1為基于遺傳算法的負(fù)載均衡策略流程 圖2為iSCSI斷點(diǎn)續(xù)傳流程 圖3為卷遷移模型邏輯結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面結(jié)合附圖和實(shí)施方法對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明。參照?qǐng)D1,圖2和圖3執(zhí)行步驟來說明本發(fā)明的實(shí)施過程:
1.當(dāng)系統(tǒng)出現(xiàn)負(fù)載不均衡時(shí),選出的兩臺(tái)需要進(jìn)行負(fù)載均衡的卷服務(wù)器上的iSCSI連接進(jìn)行編碼,編碼成一段0/1字符串,并把它作為初始染色體S。
2.如步驟I所描述,對(duì)初始染色體s進(jìn)行k次變異,產(chǎn)生k個(gè)后代S1, S2,…,Sk作為初始種群。3.如步驟2所描述,分別計(jì)算出種群中所有個(gè)體的適應(yīng)度值和它們的積累概率。為了防止優(yōu)良基因個(gè)體被強(qiáng)制破壞,本發(fā)明采用精英保留策略,即每次產(chǎn)生子代后,就與保留的精英個(gè)體進(jìn)行比較,保留適應(yīng)度值高的個(gè)體作為精英。4.如步驟3所描述,用輪盤賭選擇法選擇出k個(gè)后代,并進(jìn)行交叉變異等一系列操作。重復(fù)上述過程,直至達(dá)到限定代數(shù)。5.根據(jù)由步驟1,2,3,4所得的編碼,對(duì)兩臺(tái)卷服務(wù)器的iSCSI連接進(jìn)行重新布置。6.如果發(fā)現(xiàn)用戶在上傳數(shù)據(jù),本裝置的所實(shí)現(xiàn)的iSCSI斷點(diǎn)續(xù)傳功能會(huì)自動(dòng)啟動(dòng)
7.當(dāng)用戶將某文件上傳到iSCSI掛載的卷上時(shí),先根據(jù)文件的源地址和目標(biāo)地址在日
志文件中尋找是否有對(duì)應(yīng)的記錄。8.如步驟7所描述,如果日志文件中沒有記錄,則表示該文件為首次上傳,那么將會(huì)在日志文件中記錄該文件的源地址和目標(biāo)地址,待上傳完成后將此記錄刪除。9.如步驟7所描述,如果日志文件中有相對(duì)應(yīng)的記錄,則表明該文件為續(xù)傳,那么先根據(jù)記錄中的目標(biāo)地址,用相應(yīng)的函數(shù)計(jì)算出已上傳文件的大小。10.如步驟9所描述,設(shè)置讀指針至斷點(diǎn)后一字節(jié),將未上傳部分讀入緩沖區(qū),同時(shí),設(shè)置寫指針至目標(biāo)文件末尾,將緩沖區(qū)數(shù)據(jù)寫入。11.文件上傳完畢后,刪除日志文件中對(duì)應(yīng)記錄。12.如果發(fā)現(xiàn)系統(tǒng)滿足卷遷移的某一個(gè)條件時(shí),卷遷移執(zhí)行器(VMT)就能夠檢測(cè)到并隨即被觸發(fā),它會(huì)向卷價(jià)值判定管理器(VVJM)發(fā)送一個(gè)獲取遷移卷信息的請(qǐng)求。13.如步驟12所述,卷價(jià)值判定管理器定時(shí)地從卷元數(shù)據(jù)庫中獲取卷實(shí)時(shí)信息,并利用一定的策略不斷地更新完善它所維護(hù)的遷移隊(duì)列。14.當(dāng)卷價(jià)值判定管理器收到獲取遷移卷信息的請(qǐng)求后,取出遷移隊(duì)列中隊(duì)首的卷的信息,將它發(fā)送給卷使用狀況檢測(cè)器(VSD)進(jìn)行檢測(cè)卷現(xiàn)在的使用狀況。15.如步驟14所述,卷使用狀況檢測(cè)器(VSD)檢測(cè)到該卷正在被用戶使用,則向卷價(jià)值判定管理器(WJM)發(fā)送反饋,請(qǐng)求繼續(xù)發(fā)送遷移卷信息,直至尋找到一個(gè)未在使用的最為合理的卷。16.如步驟15所述,卷使用狀況檢測(cè)器(VSD)將檢測(cè)過使用狀況的卷的信息發(fā)送至卷服務(wù)創(chuàng)建器(VME),由卷服務(wù)創(chuàng)建器(VME)來執(zhí)行最終的遷移工作。17.如步驟16所述,卷服務(wù)創(chuàng)建器(VME)會(huì)按照創(chuàng)建新卷一復(fù)制內(nèi)容一刪除舊卷一更新卷元數(shù)據(jù)服務(wù)器這幾個(gè)步驟來對(duì)卷進(jìn)行遷移,完成后向系統(tǒng)返回相應(yīng)的完成信
肩、O18.在系統(tǒng)運(yùn)行過程中,卷使用情況收集器(VUC)子模塊將實(shí)時(shí)監(jiān)控用戶對(duì)于卷的訪問情況,并將卷訪問信息及時(shí)更新至卷元數(shù)據(jù)服務(wù)器。
權(quán)利要求
1.一種基于塊級(jí)別云存儲(chǔ)負(fù)載均衡優(yōu)化的方法,其特征在于:包括遺傳算法優(yōu)化模塊,斷點(diǎn)續(xù)傳優(yōu)化模塊和分級(jí)存儲(chǔ)優(yōu)化模塊; 所述的基于遺傳算法優(yōu)化模塊實(shí)現(xiàn)步驟具體是: (1-1)將系統(tǒng)選出的兩臺(tái)需要進(jìn)行負(fù)載均衡的卷服務(wù)器上的iSCSI連接進(jìn)行編碼,編碼成一段0/1字符串,并把它作為初始染色體S,隨后對(duì)初始染色體S進(jìn)行k次變異,產(chǎn)生k個(gè)后代S1, S2,…,Sk作為初始種群; (1-2)分別計(jì)算出種群中所有個(gè)體的適應(yīng)度值和它們的積累概率; (1-3)用輪盤賭選擇法選擇出k個(gè)后代,并進(jìn)行交叉變異一系列操作,重復(fù)上述過程,直至達(dá)到限定代數(shù); (1-4)根據(jù)得到的編碼,對(duì)兩臺(tái)卷服務(wù)器的iSCSI連接進(jìn)行重新布置; 所述的斷點(diǎn)續(xù)傳優(yōu)化模塊實(shí)現(xiàn)步驟具體是: (2-1)當(dāng)用戶將某文件上傳到iSCSI掛載的卷上時(shí),先根據(jù)文件的源地址和目標(biāo)地址在日志文件中尋找是否有對(duì)應(yīng)的記錄; (2-2)如果日志中沒有記錄,則表示該文件為首次上傳,那么將在日志文件中記錄該文件的源地址和目標(biāo)地址,待上傳完成后將此記錄刪除; (2-3)如果日志文件中有相對(duì)應(yīng)的記錄,則表明該文件為續(xù)傳,那么先根據(jù)記錄中的目標(biāo)地址,用相應(yīng)的函數(shù)計(jì)算出已上傳文件的大小; (2-4)設(shè)置讀指針至斷點(diǎn)后一字節(jié),將未上傳部分讀入緩沖區(qū),同時(shí),設(shè)置寫指針至目標(biāo)文件末尾,將緩沖區(qū)數(shù)據(jù)寫入; (2-5)文件上傳完畢后,刪除日志文件中對(duì)應(yīng)記錄; 所述的分級(jí)存儲(chǔ)優(yōu)化模塊實(shí)現(xiàn)步驟具體是: (3-1)當(dāng)系統(tǒng)滿足卷遷移的某一個(gè)條件時(shí),卷遷移執(zhí)行器(VMT)就能夠檢測(cè)到并隨即被觸發(fā),它會(huì)向卷價(jià)值判定管理器(VVJM)發(fā)送一個(gè)獲取遷移卷信息的請(qǐng)求; (3-2)卷價(jià)值判定管理器(VVJM)定時(shí)地從卷元數(shù)據(jù)庫中獲取卷實(shí)時(shí)信息,并不斷地更新完善它所維護(hù)的遷移隊(duì)列;當(dāng)卷價(jià)值判定管理器收到獲取遷移卷信息的請(qǐng)求后,取出遷移隊(duì)列中隊(duì)首的卷的信息,將它發(fā)送給卷使用狀況檢測(cè)器(VSD)進(jìn)行檢測(cè)卷現(xiàn)在的使用狀況; (3-3)如果卷使用狀況檢測(cè)器(VSD)檢測(cè)到該卷正在被用戶使用,則向卷價(jià)值判定管理器(VVJM)發(fā)送反饋,請(qǐng)求繼續(xù)發(fā)送遷移卷信息,直至尋找到一個(gè)未在使用的最為合理的卷; (3-4)卷使用狀況檢測(cè)器(VSD)將檢測(cè)過使用狀況的卷的信息發(fā)送至卷服務(wù)創(chuàng)建器(VME),由卷服務(wù)創(chuàng)建器(VME)來執(zhí)行最終的遷移工作; (3-5)卷服務(wù)創(chuàng)建器(VME)會(huì)按照創(chuàng)建新卷一復(fù)制內(nèi)容一刪除舊卷一更新卷元數(shù)據(jù)服務(wù)器這幾個(gè)步驟來對(duì)卷進(jìn)行遷移,完成后向系統(tǒng)返回相應(yīng)的完成信息; (3-6)卷使用情況收集器(VUC)子模塊將實(shí)時(shí)監(jiān)控用戶對(duì)于卷的訪問情況,并將卷訪問信息及時(shí)更新至卷元數(shù)據(jù)服務(wù)器。
全文摘要
本發(fā)明公開了一種基于塊級(jí)別云存儲(chǔ)負(fù)載均衡優(yōu)化的方法,本發(fā)明將遺傳算法中的變異部分加入到負(fù)載均衡策略中,盡可能地提高該策略搜索全局最優(yōu)解的準(zhǔn)確性;同時(shí)設(shè)計(jì)了一種面向iSCSI的斷點(diǎn)續(xù)傳功能,在重新選擇卷服務(wù)器進(jìn)行iSCSI重連時(shí),正在上傳數(shù)據(jù)的用戶無需將數(shù)據(jù)重新上傳,系統(tǒng)自動(dòng)會(huì)從斷點(diǎn)處繼續(xù)上傳,提高了系統(tǒng)的可靠性;通過利用現(xiàn)有的異構(gòu)存儲(chǔ)環(huán)境,提出了一種基于卷生命周期的分級(jí)存儲(chǔ)管理機(jī)制,充分利用不同存儲(chǔ)設(shè)備的優(yōu)勢(shì)和特點(diǎn),進(jìn)一步提高系統(tǒng)訪問效率。本發(fā)明可用于計(jì)算機(jī)存儲(chǔ)技術(shù)領(lǐng)域中來解決云存儲(chǔ)系統(tǒng)的負(fù)載均衡問題。
文檔編號(hào)H04L29/08GK103118136SQ201310063508
公開日2013年5月22日 申請(qǐng)日期2013年2月28日 優(yōu)先權(quán)日2013年2月28日
發(fā)明者張紀(jì)林, 張劍亮, 萬健, 陳恂, 任永堅(jiān), 周麗, 蔣從鋒, 殷昱煜, 任祖杰 申請(qǐng)人:杭州電子科技大學(xué)