一種基于文件熱度分析和K-means的副本放置方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于云計(jì)算領(lǐng)域,具體涉及的是一種利用熱度統(tǒng)計(jì)分析與K-means算法對 云環(huán)境下高熱度文件副本動(dòng)態(tài)調(diào)整放置的方法。
【背景技術(shù)】
[0002] 隨著社會(huì)的發(fā)展以及計(jì)算機(jī)存儲(chǔ)和數(shù)據(jù)處理能力的提高,數(shù)據(jù)爆炸式增長已經(jīng)成 為當(dāng)今時(shí)代的一個(gè)重要特征。根據(jù)國際數(shù)據(jù)公司(111丨61'1^1:;[0仙103丨3(]〇印〇1'1:;[011,100) 對數(shù)據(jù)增長的估計(jì),到2020年將產(chǎn)生40ZB(1ZB= 1.1805916207174113 X1021B)的數(shù)據(jù),相當(dāng) 于地球上人均5247GB(http: //datacenter .watchstor. com/infra-143421 .htm)。面對規(guī)模 不斷增長的海量數(shù)據(jù),隨之而來的海量數(shù)據(jù)的存儲(chǔ)和管理也得到了越來越多的關(guān)注。
[0003] 為了提高系統(tǒng)的可靠性和訪問效率,常用副本技術(shù)將數(shù)據(jù)項(xiàng)復(fù)制多份,并分別存 放在分布式文件系統(tǒng)的多個(gè)節(jié)點(diǎn)上。針對各個(gè)歷史階段對數(shù)據(jù)提出的不同訪問要求,人們 提出了多種副本管理策略,主要包括主從式、層次式、對等計(jì)算(Peer to Peer,P2P)式和基 于圖的等幾種。
[0004] 副本管理策略通常要進(jìn)行副本個(gè)數(shù)和存放位置兩方面的決策,按照做決策的時(shí)機(jī) 可分為靜態(tài)和動(dòng)態(tài)兩類。Ian Forster和KavithaRanganathan于2001年提出了在層次網(wǎng)絡(luò) 拓?fù)浣Y(jié)構(gòu)中的六種副本創(chuàng)建策略:無副本策略、最佳客戶策略、瀑布式策略、普通緩存策略、 緩存瀑布式策略、快速擴(kuò)展策略(數(shù)據(jù)網(wǎng)格環(huán)境下基于經(jīng)濟(jì)模型的副本優(yōu)化策略的研究與 實(shí)現(xiàn)李琳.)。這些策略在大部分情況下都能夠減少訪問延遲,但瀑布式策略、緩存瀑布式策 略和快速擴(kuò)展策略只適用于數(shù)據(jù)存儲(chǔ)于頂層節(jié)點(diǎn)的數(shù)據(jù)網(wǎng)格,最佳客戶策略、普通緩存策 略沒有考慮到拓?fù)浣Y(jié)構(gòu)、數(shù)據(jù)分布、網(wǎng)絡(luò)帶寬、節(jié)點(diǎn)存儲(chǔ)能力等特點(diǎn)(基于存儲(chǔ)聯(lián)盟的雙層 動(dòng)態(tài)副本創(chuàng)建策略-SADDERS孫海燕,王曉東,周斌等.),沒有考慮到文件大小和網(wǎng)絡(luò)帶寬對 訪問延遲的影響。
[0005] 本發(fā)明通過分析文件在預(yù)設(shè)時(shí)間周期內(nèi)的訪問頻率,根據(jù)熱度計(jì)算公式,推算文 件的訪問熱度。利用文件的訪問熱度,結(jié)合K-means算法,預(yù)測下一周期內(nèi)可能的高訪問熱 度文件(基于熱度分析的動(dòng)態(tài)副本創(chuàng)建算法饒磊,楊凡德,李新明,劉東.),同時(shí)綜合考慮統(tǒng) 計(jì)周期、文件大小、工作環(huán)境等多種因素,動(dòng)態(tài)地調(diào)整文件副本的數(shù)量及放置位置。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明的所要解決的技術(shù)問題是分布式系統(tǒng)或云計(jì)算平臺(tái)中的副本放置問題,提 出一種基于文件熱度分析和K-means的副本放置方法,根據(jù)任務(wù)的執(zhí)行時(shí)間選取最大值作 為時(shí)間周期,計(jì)算時(shí)間周期內(nèi)文件的訪問熱度。利用文件的訪問熱度,結(jié)合K-means算法,預(yù) 測下一周期內(nèi)可能的高訪問熱度文件,綜合考慮統(tǒng)計(jì)周期、文件大小、工作環(huán)境等多種因 素,按需動(dòng)態(tài)地調(diào)整文件副本的數(shù)量及放置位置。本發(fā)明能夠有效地減少文件訪問的平均 響應(yīng)時(shí)間,提高數(shù)據(jù)服務(wù)性能。
[0007] 技術(shù)方案:
[0008] -種基于文件熱度分析和K-means的副本放置方法,包括以下步驟:
[0009] 步驟1),根據(jù)任務(wù)的執(zhí)行時(shí)間,選擇最小值作為熱度分析的時(shí)間周期,在該時(shí)間周 期內(nèi)分析文件的訪問頻率;
[0010] 步驟2 ),根據(jù)步驟1)得到的文件訪問頻率,計(jì)算文件的訪問熱度值;
[0011] 步驟3),根據(jù)步驟2)得到的文件訪問熱度值,獲取高熱度值的文件的信息,通過κ-means算法,計(jì)算并預(yù)測下一運(yùn)行周期的高熱度文件;
[0012] 步驟4),根據(jù)步驟3)得到的高熱度文件信息,綜合考慮文件大小、文件數(shù)量、文件 位置、工作環(huán)境等眾多因素動(dòng)態(tài)地調(diào)整文件副本的數(shù)量以及放置位置;
[0013] 進(jìn)一步的,本發(fā)明的一種基于文件熱度分析和K-means的副本放置方法,步驟1)根 據(jù)任務(wù)的執(zhí)行時(shí)間,選擇最大值作為熱度分析的時(shí)間周期,在該時(shí)間周期內(nèi)分析文件的訪 問頻率。本發(fā)明使用了文件訪問次數(shù)計(jì)數(shù)器和統(tǒng)計(jì)周期計(jì)時(shí)器。初始化時(shí),默認(rèn)文件訪問次 數(shù)為1,每個(gè)統(tǒng)計(jì)周期內(nèi),文件每次被訪問計(jì)數(shù)器加1,未被訪問則計(jì)數(shù)器減1。若訪問次數(shù)已 經(jīng)為1,則計(jì)數(shù)器不再執(zhí)行減1操作。若文件訪問超時(shí)未完成,訪問計(jì)數(shù)器加1。某文件在第k 個(gè)統(tǒng)計(jì)周期內(nèi)的訪問頻率fk = n/t,其中η為該文件在統(tǒng)計(jì)周期內(nèi)被訪問的次數(shù),t為統(tǒng)計(jì)周 期內(nèi)訪問的持續(xù)時(shí)間之和;
[0014] 進(jìn)一步的,本發(fā)明的一種基于文件熱度分析和K-means的副本放置方法,步驟2)根 據(jù)步驟1)得到的文件訪問頻率,利用公式叫=a ?RASi+l),計(jì)算文件i在j時(shí)刻的訪問熱 度值。公式中,α為常量,用于對數(shù)據(jù)進(jìn)行歸一化處理;F」表示頻率對文件訪問熱度的影響,Si 表示文件大小對文件訪問熱度的影響。其中,
[0016] 進(jìn)一步的,本發(fā)明的一種基于文件熱度分析和K-means的副本放置方法,步驟3)根 據(jù)步驟2)得到的文件訪問熱度值,獲取高熱度值的文件的信息,選取k個(gè)文件作為初始化中 心,計(jì)算每個(gè)文件到中心文件的距離,將每個(gè)文件分配至最近的簇。根據(jù)現(xiàn)有的簇關(guān)系重復(fù) 計(jì)算前述過程,直至滿足終止條件。終止條件包括:
[0017] (1)沒有(或最小數(shù)目)文件被重新分配給不同的聚類;
[0018] (2)沒有(或最小數(shù)目)聚類中心發(fā)生變化;
[0019] (3)誤差平方和(SSE)局部最小,
其中X表示文件,1?表示 聚類Q的聚類中心,distU,!^)表示文件X與聚類中心叫之間的距離;
[0020] 進(jìn)一步的,本發(fā)明的一種基于文件熱度分析和K-means的副本放置方法,步驟4)根 據(jù)步驟3)得到的聚類信息,根據(jù)各個(gè)聚類中心的訪問熱度,綜合考慮文件大小、文件數(shù)量、 文件位置、工作環(huán)境等眾多因素動(dòng)態(tài)地調(diào)整文件副本的數(shù)量以及放置位置,高熱度的簇適 當(dāng)增加副本數(shù)量,低熱度的簇課適當(dāng)減少副本數(shù)量。
[0021 ]有益效果
[0022]本發(fā)明針對分布式系統(tǒng)或云計(jì)算平臺(tái)中副本放置,結(jié)合文件訪問熱度與K-means 算法來綜合分析,有助于高訪問量的系統(tǒng)中實(shí)現(xiàn)副本的合理放