本發(fā)明涉及存儲(chǔ)管理技術(shù)領(lǐng)域,特別是涉及一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理方法及其裝置。
背景技術(shù):
隨著云計(jì)算技術(shù)的發(fā)展,以及云海os系統(tǒng)中計(jì)算節(jié)點(diǎn)的增加和云海系統(tǒng)中組織和用戶(hù)的增加,云海os系統(tǒng)中的模版和鏡像文件規(guī)模同時(shí)在飛速增加。模版和鏡像所在的二級(jí)存儲(chǔ)的容量空間正在受到挑戰(zhàn)。因此,增加對(duì)多塊二級(jí)存儲(chǔ)的支持勢(shì)在必行,但是,虛擬化平臺(tái)支持的二級(jí)存儲(chǔ)掛載點(diǎn)個(gè)數(shù)有限,比如vmware虛擬化支持的存儲(chǔ)掛載點(diǎn)僅有9個(gè)、ics虛擬化平臺(tái)支持一個(gè)二級(jí)存儲(chǔ)掛載點(diǎn)等等。
為了解決兩者之間的沖突問(wèn)題,參見(jiàn)圖1所示,在虛擬化平臺(tái)和二級(jí)存儲(chǔ)間設(shè)置二級(jí)存儲(chǔ)緩沖區(qū)作為多塊二級(jí)存儲(chǔ)對(duì)虛擬化平臺(tái)提供模版鏡像服務(wù)的唯一存儲(chǔ)接口。通過(guò)該方法,一方面緩解vmware等虛擬化因?yàn)榇鎯?chǔ)掛載點(diǎn)數(shù)量限制導(dǎo)致與多塊二級(jí)存儲(chǔ)之間的矛盾,另一方面,解決云海系統(tǒng)二級(jí)存儲(chǔ)空間不足的問(wèn)題。但是,由于二級(jí)存儲(chǔ)緩沖區(qū)的容量有限,需要有效的策略實(shí)現(xiàn)數(shù)據(jù)的進(jìn)入和移除二級(jí)存儲(chǔ)緩沖區(qū)。
因此,如何提供一種有效管理緩沖區(qū)內(nèi)數(shù)據(jù)的基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理方法及其裝置是本領(lǐng)域技術(shù)人員目前需要解決的問(wèn)題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理方法及其裝置,能夠有效管理二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)數(shù)據(jù)的進(jìn)入和移除,管理效率和可靠性高。
為解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理方法,包括:
接收虛擬化平臺(tái)發(fā)送的模板或鏡像的使用請(qǐng)求后,查詢(xún)二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)是否存在所述虛擬化平臺(tái)請(qǐng)求的模板或鏡像;
若存在,將所述請(qǐng)求的模板或鏡像的使用路徑返回所述虛擬化平臺(tái);
若不存在,從二級(jí)存儲(chǔ)內(nèi)獲取所述請(qǐng)求的模板或鏡像拷貝至所述二級(jí)存儲(chǔ)緩沖區(qū),并生成符合所述虛擬化平臺(tái)的使用路徑返回所述虛擬化平臺(tái);若拷貝前檢測(cè)到所述二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間不足,按照預(yù)設(shè)移除策略將所述二級(jí)存儲(chǔ)緩沖區(qū)中的部分?jǐn)?shù)據(jù)進(jìn)行移除。
優(yōu)選地,還包括:
記錄所述二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)各個(gè)模板或鏡像的使用頻率和當(dāng)前被使用的次數(shù);
其中,將所述請(qǐng)求的模板或鏡像的使用路徑返回所述虛擬化平臺(tái)后,所述請(qǐng)求的模板或鏡像的當(dāng)前被使用的次數(shù)加1;接收到所述虛擬化平臺(tái)使用完畢所述請(qǐng)求的模板或鏡像的響應(yīng)后,所述請(qǐng)求的模板或鏡像的當(dāng)前被使用的次數(shù)減1。
優(yōu)選地,判斷拷貝過(guò)程中所述二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間是否不足的過(guò)程具體為:
當(dāng)確定所述二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)不存在所述請(qǐng)求的模板或鏡像時(shí),檢查所述二級(jí)存儲(chǔ)緩沖區(qū)的剩余空間以及所述請(qǐng)求的模板或鏡像的所需空間大小,若所述請(qǐng)求的模板或鏡像的所需空間大于所述二級(jí)存儲(chǔ)緩沖區(qū)的剩余空間,則所述二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間不足。
優(yōu)選地,所述按照預(yù)設(shè)移除策略將所述二級(jí)存儲(chǔ)緩沖區(qū)中的部分?jǐn)?shù)據(jù)進(jìn)行移除的過(guò)程具體為:
將所述二級(jí)存儲(chǔ)緩沖區(qū)中當(dāng)前未使用的模板或鏡像,按照自當(dāng)前時(shí)刻起之前預(yù)設(shè)時(shí)間段內(nèi)的使用頻率從小到大依次刪除;
每刪除一個(gè)模板或鏡像,則檢查所述二級(jí)存儲(chǔ)緩沖區(qū)的當(dāng)前剩余空間是否大于所述請(qǐng)求的模板或鏡像的所需空間大小,若大于,則開(kāi)始進(jìn)行拷貝,否則,繼續(xù)刪除下一個(gè)模板或鏡像。
優(yōu)選地,判斷所述二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間不足之后,按照預(yù)設(shè)移除策略將所述二級(jí)存儲(chǔ)緩沖區(qū)中的部分?jǐn)?shù)據(jù)進(jìn)行移除之前還包括:
判斷所述二級(jí)存儲(chǔ)緩沖區(qū)的總空間是否小于所述請(qǐng)求的模板或鏡像的所需空間,若是,發(fā)出錯(cuò)誤提示,否則,則按照預(yù)設(shè)移除策略將所述二級(jí)存儲(chǔ)緩沖區(qū)中的部分?jǐn)?shù)據(jù)進(jìn)行移除。
為解決上述技術(shù)問(wèn)題,本發(fā)明還提供了一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理裝置,包括:
請(qǐng)求接收模塊,用于接收虛擬化平臺(tái)發(fā)送的模板或鏡像的使用請(qǐng)求后,查詢(xún)二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)是否存在所述虛擬化平臺(tái)請(qǐng)求的模板或鏡像;若存在,觸發(fā)路徑返回模塊,若不存在,觸發(fā)空間檢測(cè)模塊;
所述路徑返回模塊,用于將所述請(qǐng)求的模板或鏡像的使用路徑返回所述虛擬化平臺(tái);
空間檢測(cè)模塊,用于檢測(cè)所述二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間是否足夠,若存儲(chǔ)控制不足,觸發(fā)移除模塊;若存儲(chǔ)空間足夠,觸發(fā)拷貝模塊;
所述拷貝模塊,用于從二級(jí)存儲(chǔ)內(nèi)獲取所述請(qǐng)求的模板或鏡像拷貝至所述二級(jí)存儲(chǔ)緩沖區(qū),并生成符合所述虛擬化平臺(tái)的使用路徑發(fā)送至所述路徑返回模塊;
所述移除模塊,用于按照預(yù)設(shè)移除策略將所述二級(jí)存儲(chǔ)緩沖區(qū)中的部分?jǐn)?shù)據(jù)進(jìn)行移除,并在每次移除完成后,觸發(fā)所述空間檢測(cè)模塊。
優(yōu)選地,還包括:
參數(shù)記錄模塊,用于記錄所述二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)各個(gè)模板或鏡像的使用頻率和當(dāng)前被使用的次數(shù);其中,將所述請(qǐng)求的模板或鏡像的使用路徑返回所述虛擬化平臺(tái)后,所述請(qǐng)求的模板或鏡像的當(dāng)前被使用的次數(shù)加1;接收到所述虛擬化平臺(tái)使用完畢所述請(qǐng)求的模板或鏡像的響應(yīng)后,所述請(qǐng)求的模板或鏡像的當(dāng)前被使用的次數(shù)減1。
優(yōu)選地,所述空間檢測(cè)模塊具體包括:
緩沖區(qū)空間檢查單元,當(dāng)確定所述二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)不存在所述請(qǐng)求的模板或鏡像時(shí),檢查所述二級(jí)存儲(chǔ)緩沖區(qū)的剩余空間;
負(fù)載空間檢查單元,用于檢查所述請(qǐng)求的模板或鏡像的所需空間大?。?/p>
比較單元,用于比較所述請(qǐng)求的模板或鏡像的所需空間與所述二級(jí)存儲(chǔ)緩沖區(qū)的剩余空間的大小,若所述請(qǐng)求的模板或鏡像的所需空間大于所述二級(jí)存儲(chǔ)緩沖區(qū)的剩余空間,則所述二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間不足。
優(yōu)選地,所述移除模塊具體包括:
排序單元,用于將所述二級(jí)存儲(chǔ)緩沖區(qū)中當(dāng)前未使用的模板或鏡像,按照自當(dāng)前時(shí)刻起之前預(yù)設(shè)時(shí)間段內(nèi)的使用頻率從小到大進(jìn)行排序;
刪除單元,用于將所述二級(jí)存儲(chǔ)緩沖區(qū)中當(dāng)前未使用的模板或鏡像,按照自當(dāng)前時(shí)刻起之前預(yù)設(shè)時(shí)間段內(nèi)的使用頻率從小到大依次刪除;每刪除一個(gè)模板或鏡像,觸發(fā)所述空間檢測(cè)模塊。
優(yōu)選地,還包括:
錯(cuò)誤判斷模塊,用于判斷所述二級(jí)存儲(chǔ)緩沖區(qū)的總空間是否小于所述請(qǐng)求的模板或鏡像的所需空間,若是,發(fā)出錯(cuò)誤提示,否則,觸發(fā)所述移除模塊;
相應(yīng)的,所述空間檢測(cè)模塊判斷所述二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間不足之后,觸發(fā)所述錯(cuò)誤判斷模塊。
本發(fā)明提供了一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理方法及其裝置,在二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)包含虛擬化平臺(tái)請(qǐng)求的模板或鏡像時(shí),返回相應(yīng)的使用路徑,在不包含時(shí),從二級(jí)存儲(chǔ)內(nèi)拷貝相應(yīng)的模板或鏡像,若拷貝前二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)空間不足,則按照預(yù)設(shè)移除策略從二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)刪除部分?jǐn)?shù)據(jù),使其能夠完成拷貝操作??梢?jiàn),本發(fā)明能夠有效地管理數(shù)據(jù)進(jìn)入和移除該二級(jí)存儲(chǔ)緩沖區(qū),避免由于二級(jí)存儲(chǔ)緩沖區(qū)容量有限導(dǎo)致的頻繁空間不足的情況出現(xiàn),盡可能保證了虛擬化平臺(tái)發(fā)起的請(qǐng)求的成功執(zhí)行,管理效率和可靠性高。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)現(xiàn)有技術(shù)和實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為二級(jí)存儲(chǔ)緩沖區(qū)的設(shè)置示意圖;
圖2為本發(fā)明提供的一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理方法的過(guò)程的流程圖;
圖3為本發(fā)明提供的另一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理方法的過(guò)程的流程圖;
圖4本發(fā)明提供的一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
本發(fā)明的核心是提供一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理方法及其裝置,能夠有效管理二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)數(shù)據(jù)的進(jìn)入和移除,管理效率和可靠性高。
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明提供了一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理方法,參見(jiàn)圖2所示,圖2為本發(fā)明提供的一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理方法的過(guò)程的流程圖;該方法包括:
步驟s1:接收虛擬化平臺(tái)發(fā)送的模板或鏡像的使用請(qǐng)求后,查詢(xún)二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)是否存在虛擬化平臺(tái)請(qǐng)求的模板或鏡像;
上述操作由二級(jí)存儲(chǔ)管理節(jié)點(diǎn)進(jìn)行。
另外,接收使用請(qǐng)求后,二級(jí)存儲(chǔ)管理節(jié)點(diǎn)會(huì)將該使用請(qǐng)求放置于請(qǐng)求隊(duì)列中,喚醒處理線(xiàn)程。
步驟s2:若存在,將請(qǐng)求的模板或鏡像的使用路徑返回虛擬化平臺(tái);
步驟s3:若不存在,從二級(jí)存儲(chǔ)內(nèi)獲取請(qǐng)求的模板或鏡像拷貝至二級(jí)存儲(chǔ)緩沖區(qū),并生成符合虛擬化平臺(tái)的使用路徑返回虛擬化平臺(tái);若拷貝前檢測(cè)到二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間不足,按照預(yù)設(shè)移除策略將二級(jí)存儲(chǔ)緩沖區(qū)中的部分?jǐn)?shù)據(jù)進(jìn)行移除。
步驟s2和步驟s3的操作一般由二級(jí)存儲(chǔ)管理節(jié)點(diǎn)控制二級(jí)存儲(chǔ)緩沖區(qū)進(jìn)行,步驟s3中,二級(jí)存儲(chǔ)緩沖區(qū)發(fā)送查詢(xún)請(qǐng)求至二級(jí)存儲(chǔ),將查到的的模版或者鏡像拷貝到二級(jí)存儲(chǔ)緩沖區(qū)中,并且記錄模版或者鏡像的信息之后生成模版或者鏡像的使用路徑供虛擬化平臺(tái)使用。
可以理解的是,二級(jí)存儲(chǔ)緩沖區(qū)類(lèi)似于驛站,暫時(shí)存儲(chǔ)來(lái)自二級(jí)存儲(chǔ)的數(shù)據(jù)和來(lái)自虛擬化平臺(tái)的數(shù)據(jù),然后在特定條件下將虛擬化平臺(tái)的數(shù)據(jù)保存到二級(jí)存儲(chǔ),將二級(jí)存儲(chǔ)拷貝進(jìn)來(lái)的數(shù)據(jù)刪除。因此,二級(jí)存儲(chǔ)緩沖區(qū)的移除包括兩部分,一部分是將來(lái)自二級(jí)存儲(chǔ)的數(shù)據(jù)刪除;另一部分是將來(lái)自虛擬化的數(shù)據(jù)保存到二級(jí)存儲(chǔ)。
二級(jí)存儲(chǔ)中存放數(shù)據(jù)的特點(diǎn)有:第一,讀多寫(xiě)少;第二,順序讀寫(xiě);第三,一次請(qǐng)求的數(shù)據(jù)量大,第四,寫(xiě)入數(shù)據(jù)后,不進(jìn)行任何的修改。二級(jí)存儲(chǔ)是一個(gè)存放iso和模版數(shù)據(jù)的存儲(chǔ)服務(wù)器。二級(jí)存儲(chǔ)通過(guò)網(wǎng)絡(luò)與各虛擬化平臺(tái)之間建立關(guān)系。當(dāng)有多個(gè)二級(jí)存儲(chǔ)時(shí),二級(jí)存儲(chǔ)與云海的二級(jí)存儲(chǔ)管理節(jié)點(diǎn)進(jìn)行關(guān)聯(lián),這種關(guān)聯(lián)關(guān)系包含通過(guò)管理網(wǎng)絡(luò)和數(shù)據(jù)網(wǎng)絡(luò)的兩種關(guān)聯(lián)關(guān)系。在二級(jí)存儲(chǔ)管理節(jié)點(diǎn)中,劃分適量的存儲(chǔ)做為二級(jí)存儲(chǔ)緩沖區(qū)的存儲(chǔ)空間。二級(jí)存儲(chǔ)管理節(jié)點(diǎn)通過(guò)二級(jí)存儲(chǔ)緩沖區(qū)向虛擬化平臺(tái)提供模版或鏡像的使用服務(wù)。二級(jí)存儲(chǔ)緩沖區(qū)是二級(jí)存儲(chǔ)管理節(jié)點(diǎn)的一部分存儲(chǔ),其存儲(chǔ)空間根據(jù)云海os系統(tǒng)中資源和用戶(hù)的規(guī)模而定。二級(jí)存儲(chǔ)緩沖區(qū)根據(jù)虛擬化平臺(tái)支持的存儲(chǔ)類(lèi)型,提供nfs和cifs兩種存儲(chǔ)類(lèi)型的服務(wù)。
作為優(yōu)選地,該方法還包括:
記錄二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)各個(gè)模板或鏡像的使用頻率和當(dāng)前被使用的次數(shù);
其中,將請(qǐng)求的模板或鏡像的使用路徑返回虛擬化平臺(tái)后,請(qǐng)求的模板或鏡像的當(dāng)前被使用的次數(shù)加1;接收到虛擬化平臺(tái)使用完畢請(qǐng)求的模板或鏡像的響應(yīng)后,請(qǐng)求的模板或鏡像的當(dāng)前被使用的次數(shù)減1。
可以理解的是,這里的當(dāng)前被使用的次數(shù),是用于判斷該模板或鏡像當(dāng)前是否有虛擬化平臺(tái)正在使用,記錄當(dāng)前被使用的次數(shù)為優(yōu)選方案,也可僅記錄使用狀態(tài),即當(dāng)前是否被使用的狀態(tài),具體采用哪種方式本發(fā)明不作限定。
另外,使用頻率的記錄方式具體為記錄使用次數(shù)及使用時(shí)間,之后在后續(xù)需要時(shí),根據(jù)一段時(shí)間內(nèi)的使用次數(shù)即可計(jì)算出使用頻率。
作為優(yōu)選地,步驟s3中,判斷拷貝過(guò)程中二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間是否不足的過(guò)程具體為:
步驟s301:當(dāng)確定二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)不存在請(qǐng)求的模板或鏡像時(shí),檢查二級(jí)存儲(chǔ)緩沖區(qū)的剩余空間以及請(qǐng)求的模板或鏡像的所需空間大?。?/p>
步驟s302:若請(qǐng)求的模板或鏡像的所需空間大于二級(jí)存儲(chǔ)緩沖區(qū)的剩余空間,則二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間不足;
步驟s303:若請(qǐng)求的模板或鏡像的所需空間不大于二級(jí)存儲(chǔ)緩沖區(qū)的剩余空間,則從二級(jí)存儲(chǔ)內(nèi)獲取請(qǐng)求的模板或鏡像拷貝至二級(jí)存儲(chǔ)緩沖區(qū),并生成符合虛擬化平臺(tái)的使用路徑返回虛擬化平臺(tái)。
其中,向二級(jí)存儲(chǔ)查詢(xún)請(qǐng)求的模板或鏡像的所需空間大小時(shí),可同時(shí)獲取請(qǐng)求的模板或鏡像在二級(jí)存儲(chǔ)的路徑等信息。
作為優(yōu)選地,步驟s3中,按照預(yù)設(shè)移除策略將二級(jí)存儲(chǔ)緩沖區(qū)中的部分?jǐn)?shù)據(jù)進(jìn)行移除的過(guò)程具體為:
步驟s305:將二級(jí)存儲(chǔ)緩沖區(qū)中當(dāng)前未使用的模板或鏡像,按照自當(dāng)前時(shí)刻起之前預(yù)設(shè)時(shí)間段內(nèi)的使用頻率從小到大依次刪除;
每刪除一個(gè)模板或鏡像,則檢查二級(jí)存儲(chǔ)緩沖區(qū)的當(dāng)前剩余空間是否大于請(qǐng)求的模板或鏡像的所需空間大小,若大于,則開(kāi)始進(jìn)行拷貝,否則,繼續(xù)刪除下一個(gè)模板或鏡像。
進(jìn)一步可知,步驟s305之后還包括:
步驟s306:若將當(dāng)前未使用的全部模板或鏡像刪除完畢后,二級(jí)存儲(chǔ)緩沖區(qū)的當(dāng)前剩余空間仍小于請(qǐng)求的模板或鏡像的所需空間大小,則等待二級(jí)存儲(chǔ)緩沖區(qū)中正在使用的模板或鏡像使用完畢后繼續(xù)進(jìn)行移除操作。
作為優(yōu)選地,步驟s3中,判斷二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間不足之后,按照預(yù)設(shè)移除策略將二級(jí)存儲(chǔ)緩沖區(qū)中的部分?jǐn)?shù)據(jù)進(jìn)行移除之前還包括:
步驟s304:判斷二級(jí)存儲(chǔ)緩沖區(qū)的總空間是否小于請(qǐng)求的模板或鏡像的所需空間,若是,發(fā)出錯(cuò)誤提示,否則,則按照預(yù)設(shè)移除策略將二級(jí)存儲(chǔ)緩沖區(qū)中的部分?jǐn)?shù)據(jù)進(jìn)行移除。
例如,假設(shè)目前二級(jí)存儲(chǔ)緩沖區(qū)中有模板或者鏡像a、b、c、d,其中a正在被使用。b、c、d處于空閑狀態(tài),在緩沖區(qū)中模板鏡像使用頻率分別是tb<ta<td<tc。待拷貝的模板為e。
移除過(guò)程中,按照模板鏡像的使用頻率的大小,由小到達(dá)進(jìn)行排序,b、d、c并獲取c、d、b占用的空間大小sc、sd、sb。
依次將模版b、d、c移除二級(jí)存儲(chǔ)緩沖區(qū),每次移除后,比較二級(jí)存儲(chǔ)緩沖區(qū)的當(dāng)前剩余空間是否能夠置入模版e。
一旦空間足夠,則根據(jù)模版e的信息,將模版e從二級(jí)存儲(chǔ)中拷貝到二級(jí)存儲(chǔ)緩沖區(qū),并且生成符合虛擬化平臺(tái)的路徑反饋給虛擬化平臺(tái)。
如果移除全部空閑模板或鏡像b、d、c后,二級(jí)存儲(chǔ)緩沖區(qū)的當(dāng)前剩余空間仍不夠,sb+sd+sc<se,那么使用模板e(cuò)的請(qǐng)求將繼續(xù)在隊(duì)列中等待,等待正在使用的模板a使用結(jié)束后被移除。如果模板e(cuò)的需要空間大小大于二級(jí)存儲(chǔ)緩沖區(qū)總的空間大小,則發(fā)出錯(cuò)誤提示提醒管理員。
本發(fā)明提供了一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理方法,在二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)包含虛擬化平臺(tái)請(qǐng)求的模板或鏡像時(shí),返回相應(yīng)的使用路徑,在不包含時(shí),從二級(jí)存儲(chǔ)內(nèi)拷貝相應(yīng)的模板或鏡像,若拷貝前二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)空間不足,則按照預(yù)設(shè)移除策略從二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)刪除部分?jǐn)?shù)據(jù),使其能夠完成拷貝操作。可見(jiàn),本發(fā)明能夠有效地管理數(shù)據(jù)進(jìn)入和移除該二級(jí)存儲(chǔ)緩沖區(qū),避免由于二級(jí)存儲(chǔ)緩沖區(qū)容量有限導(dǎo)致的頻繁空間不足的情況出現(xiàn),盡可能保證了虛擬化平臺(tái)發(fā)起的請(qǐng)求的成功執(zhí)行,管理效率和可靠性高。
本發(fā)明還提供了一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理裝置,參見(jiàn)圖4所示,該裝置包括:
請(qǐng)求接收模塊1,用于接收虛擬化平臺(tái)發(fā)送的模板或鏡像的使用請(qǐng)求后,查詢(xún)二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)是否存在虛擬化平臺(tái)請(qǐng)求的模板或鏡像;若存在,觸發(fā)路徑返回模塊2,若不存在,觸發(fā)空間檢測(cè)模塊3;
路徑返回模塊2,用于將請(qǐng)求的模板或鏡像的使用路徑返回虛擬化平臺(tái);
空間檢測(cè)模塊3,用于檢測(cè)二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間是否足夠,若存儲(chǔ)控制不足,觸發(fā)移除模塊5;若存儲(chǔ)空間足夠,觸發(fā)拷貝模塊4;
拷貝模塊4,用于從二級(jí)存儲(chǔ)內(nèi)獲取請(qǐng)求的模板或鏡像拷貝至二級(jí)存儲(chǔ)緩沖區(qū),并生成符合虛擬化平臺(tái)的使用路徑發(fā)送至路徑返回模塊2;
移除模塊5,用于按照預(yù)設(shè)移除策略將二級(jí)存儲(chǔ)緩沖區(qū)中的部分?jǐn)?shù)據(jù)進(jìn)行移除,并在每次移除完成后,觸發(fā)空間檢測(cè)模塊3。
作為優(yōu)選地,該裝置還包括:
參數(shù)記錄模塊6,用于記錄二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)各個(gè)模板或鏡像的使用頻率和當(dāng)前被使用的次數(shù);其中,將請(qǐng)求的模板或鏡像的使用路徑返回虛擬化平臺(tái)后,請(qǐng)求的模板或鏡像的當(dāng)前被使用的次數(shù)加1;接收到虛擬化平臺(tái)使用完畢請(qǐng)求的模板或鏡像的響應(yīng)后,請(qǐng)求的模板或鏡像的當(dāng)前被使用的次數(shù)減1。
其中,空間檢測(cè)模塊3具體包括:
緩沖區(qū)空間檢查單元,當(dāng)確定二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)不存在請(qǐng)求的模板或鏡像時(shí),檢查二級(jí)存儲(chǔ)緩沖區(qū)的剩余空間;
負(fù)載空間檢查單元,用于檢查請(qǐng)求的模板或鏡像的所需空間大?。?/p>
比較單元,用于比較請(qǐng)求的模板或鏡像的所需空間與二級(jí)存儲(chǔ)緩沖區(qū)的剩余空間的大小,若請(qǐng)求的模板或鏡像的所需空間大于二級(jí)存儲(chǔ)緩沖區(qū)的剩余空間,則二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間不足。
另外,移除模塊5具體包括:
排序單元,用于將二級(jí)存儲(chǔ)緩沖區(qū)中當(dāng)前未使用的模板或鏡像,按照自當(dāng)前時(shí)刻起之前預(yù)設(shè)時(shí)間段內(nèi)的使用頻率從小到大進(jìn)行排序;
刪除單元,用于將二級(jí)存儲(chǔ)緩沖區(qū)中當(dāng)前未使用的模板或鏡像,按照自當(dāng)前時(shí)刻起之前預(yù)設(shè)時(shí)間段內(nèi)的使用頻率從小到大依次刪除;每刪除一個(gè)模板或鏡像,觸發(fā)空間檢測(cè)模塊3。
作為優(yōu)選地,該裝置還包括:
錯(cuò)誤判斷模塊7,用于判斷二級(jí)存儲(chǔ)緩沖區(qū)的總空間是否小于請(qǐng)求的模板或鏡像的所需空間,若是,發(fā)出錯(cuò)誤提示,否則,觸發(fā)移除模塊5;
相應(yīng)的,空間檢測(cè)模塊3判斷二級(jí)存儲(chǔ)緩沖區(qū)存儲(chǔ)空間不足之后,觸發(fā)錯(cuò)誤判斷模塊7。
本發(fā)明提供了一種基于云海os系統(tǒng)的二級(jí)存儲(chǔ)緩沖區(qū)數(shù)據(jù)管理裝置,在二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)包含虛擬化平臺(tái)請(qǐng)求的模板或鏡像時(shí),返回相應(yīng)的使用路徑,在不包含時(shí),從二級(jí)存儲(chǔ)內(nèi)拷貝相應(yīng)的模板或鏡像,若拷貝前二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)空間不足,則按照預(yù)設(shè)移除策略從二級(jí)存儲(chǔ)緩沖區(qū)內(nèi)刪除部分?jǐn)?shù)據(jù),使其能夠完成拷貝操作??梢?jiàn),本發(fā)明能夠有效地管理數(shù)據(jù)進(jìn)入和移除該二級(jí)存儲(chǔ)緩沖區(qū),避免由于二級(jí)存儲(chǔ)緩沖區(qū)容量有限導(dǎo)致的頻繁空間不足的情況出現(xiàn),盡可能保證了虛擬化平臺(tái)發(fā)起的請(qǐng)求的成功執(zhí)行,管理效率和可靠性高。
本說(shuō)明書(shū)中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見(jiàn)即可。對(duì)于實(shí)施例公開(kāi)的裝置而言,由于其與實(shí)施例公開(kāi)的方法相對(duì)應(yīng),所以描述的比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法部分說(shuō)明即可。
還需要說(shuō)明的是,在本說(shuō)明書(shū)中,諸如第一和第二等之類(lèi)的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開(kāi)來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過(guò)程、方法、物品或者設(shè)備中還存在另外的相同要素。
對(duì)所公開(kāi)的實(shí)施例的上述說(shuō)明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專(zhuān)業(yè)技術(shù)人員來(lái)說(shuō)將是顯而易見(jiàn)的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其他實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會(huì)被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開(kāi)的原理和新穎特點(diǎn)相一致的最寬的范圍。