基于橫向縱向信息集成的分布式計(jì)算環(huán)境性能預(yù)測(cè)方法
【專利摘要】一種基于橫向縱向信息集成的分布式計(jì)算環(huán)境性能預(yù)測(cè)方法,首先,把一個(gè)長(zhǎng)的時(shí)間序列數(shù)據(jù)切分成多個(gè)等長(zhǎng)度的子時(shí)間序列,各子時(shí)間序列的長(zhǎng)度為T;之后,采用縱向預(yù)測(cè)算法使用指數(shù)型平滑曲線算法進(jìn)行預(yù)測(cè)對(duì)之前所有生成的子時(shí)間序列進(jìn)行預(yù)測(cè),計(jì)算出周期與周期之間的關(guān)聯(lián)性,得到縱向預(yù)測(cè)數(shù)據(jù)并對(duì)得到的縱向預(yù)測(cè)數(shù)據(jù)進(jìn)行整合;最后,采用橫向預(yù)測(cè)算法通過在時(shí)間周期內(nèi)兩個(gè)時(shí)間點(diǎn)之間的關(guān)系對(duì)上一步得到的縱向預(yù)測(cè)數(shù)據(jù)進(jìn)行預(yù)測(cè),找到周期內(nèi)的數(shù)據(jù)的聯(lián)系,構(gòu)建關(guān)系模型,對(duì)尋找的所有時(shí)間周期內(nèi)存在的橫向關(guān)系存儲(chǔ)起來,進(jìn)行周期內(nèi)預(yù)測(cè),加權(quán)疊加預(yù)測(cè)結(jié)果,并調(diào)整橫向關(guān)系,得到最終預(yù)測(cè)結(jié)果。本發(fā)明提高了服務(wù)器對(duì)資源調(diào)度的準(zhǔn)確性與可靠性。
【專利說明】基于橫向縱向信息集成的分布式計(jì)算環(huán)境性能預(yù)測(cè)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息集成、時(shí)間序列預(yù)測(cè)領(lǐng)域,特別涉及一種基于橫向縱向算法對(duì)分布式環(huán)境下服務(wù)器性能的預(yù)測(cè)方法。
【背景技術(shù)】
[0002]在服務(wù)器的負(fù)載均衡中,需要采集系統(tǒng)中各種資源的相關(guān)信息以確定資源是否可用,然后調(diào)度算法根據(jù)資源的可用性、任務(wù)的運(yùn)行時(shí)間等來確定任務(wù)的優(yōu)先級(jí)并分配給它們可用的資源。然而隨著任務(wù)的運(yùn)行,各種資源的狀態(tài),如CPU負(fù)載、剩余內(nèi)存、硬盤剩余空間等會(huì)隨時(shí)發(fā)生改變,因此需要對(duì)服務(wù)器性能的預(yù)測(cè)來指導(dǎo)服務(wù)器的負(fù)載均衡與調(diào)度算法。
[0003]對(duì)服務(wù)器性能預(yù)測(cè)可以采取時(shí)間序列算法,也就是基于歷史數(shù)據(jù)做出預(yù)測(cè)。該方法的簡(jiǎn)單步驟:1)按時(shí)間序列周期性地采集服務(wù)器性能數(shù)據(jù);2)基于這些歷史數(shù)據(jù),建立一個(gè)關(guān)于服務(wù)器性能與時(shí)間變量之間的關(guān)系模型;3)采用這個(gè)模型來計(jì)算指定時(shí)間所對(duì)應(yīng)的服務(wù)器性能值,并把該值作為服務(wù)器性能的預(yù)測(cè)值。使用這種類型的模型,可以對(duì)服務(wù)器性能進(jìn)行預(yù)測(cè),從而幫助調(diào)度程序更好地分配資源、管理任務(wù),提高整個(gè)分布式系統(tǒng)的工作效率。
[0004]對(duì)服務(wù)器性能采用時(shí)間序列的方法來進(jìn)行預(yù)測(cè),可以通過時(shí)間序列自回歸模型AR模型、滑動(dòng)平均模型MA模型等進(jìn)行預(yù)測(cè),這些模型主要對(duì)一些穩(wěn)態(tài)的數(shù)據(jù)能夠準(zhǔn)確的進(jìn)行預(yù)測(cè),但是如果數(shù)據(jù)不是處于穩(wěn)態(tài)情況,預(yù)測(cè)結(jié)果就不夠理想,而且這些模型不能夠很好的進(jìn)行長(zhǎng)期預(yù)測(cè)。
[0005]以往的研究表明,服務(wù)器性能情況存在著周期性。一個(gè)服務(wù)器性能可以被看作是多個(gè)小的、具有不同周期的周期性的疊加效應(yīng),如何利用數(shù)據(jù)的周期性來指導(dǎo)預(yù)測(cè),是一個(gè)函待解決的問題。
【發(fā)明內(nèi)容】
[0006]本發(fā)明針對(duì)現(xiàn)有技術(shù)存在的上述不足,提供了對(duì)服務(wù)器性能進(jìn)行長(zhǎng)期預(yù)測(cè)的方法。本發(fā)明通過以下技術(shù)方案實(shí)現(xiàn):
[0007]—種基于橫向縱向信息集成的分布式計(jì)算環(huán)境性能預(yù)測(cè)方法,包括以下步驟:
[0008]步驟1:把一個(gè)長(zhǎng)的時(shí)間序列數(shù)據(jù)切分成多個(gè)等長(zhǎng)度的子時(shí)間序列,各子時(shí)間序列的長(zhǎng)度為T ;
[0009]步驟2:采用縱向預(yù)測(cè)算法使用指數(shù)型平滑曲線算法進(jìn)行預(yù)測(cè)對(duì)步驟I所有生成的子時(shí)間序列進(jìn)行預(yù)測(cè),計(jì)算出周期與周期之間的關(guān)聯(lián)性,得到縱向預(yù)測(cè)數(shù)據(jù)并對(duì)得到的縱向預(yù)測(cè)數(shù)據(jù)進(jìn)行整合;
[0010]步驟3:采用橫向預(yù)測(cè)算法通過在時(shí)間周期內(nèi)兩個(gè)時(shí)間點(diǎn)之間的關(guān)系對(duì)步驟2得到的縱向預(yù)測(cè)數(shù)據(jù)進(jìn)行預(yù)測(cè),具體找到周期內(nèi)的數(shù)據(jù)的聯(lián)系,構(gòu)建關(guān)系模型,對(duì)尋找的所有時(shí)間周期內(nèi)存在的橫向關(guān)系存儲(chǔ)起來,然后進(jìn)行周期內(nèi)預(yù)測(cè),加權(quán)疊加預(yù)測(cè)結(jié)果,并通過反饋方式調(diào)整橫向關(guān)系,得到最終預(yù)測(cè)結(jié)果。
[0011]依照本發(fā)明較佳實(shí)施例所述的基于橫向縱向信息集成的分布式計(jì)算環(huán)境性能預(yù)測(cè)方法,步驟I具體為把歷史數(shù)據(jù)按照時(shí)間周期T轉(zhuǎn)化為多組子時(shí)間序列,其中:
[0012]歷史數(shù)據(jù)為:(X1,X2, X3, , XnI,長(zhǎng)度為 η ;
[0013]每個(gè)子時(shí)間序列的長(zhǎng)度為Τ,切分成η/Τ個(gè)子時(shí)間序列,第i個(gè)子序列Si表示成{xn, xi2, Xi3,…,xiT},則把歷史數(shù)據(jù)切分成〈Si, S2,…,Si,…,Sl>,其中L = η/Τ:
[0014]
【權(quán)利要求】
1.一種基于橫向縱向信息集成的分布式計(jì)算環(huán)境性能預(yù)測(cè)方法,其特征在于,包括以下步驟: 步驟1:把一個(gè)長(zhǎng)的時(shí)間序列數(shù)據(jù)切分成多個(gè)等長(zhǎng)度的子時(shí)間序列,各子時(shí)間序列的長(zhǎng)度為T; 步驟2:采用縱向預(yù)測(cè)算法使用指數(shù)型平滑曲線算法進(jìn)行預(yù)測(cè)對(duì)步驟I所有生成的子時(shí)間序列進(jìn)行預(yù)測(cè),計(jì)算出周期與周期之間的關(guān)聯(lián)性,得到縱向預(yù)測(cè)數(shù)據(jù)并對(duì)得到的縱向預(yù)測(cè)數(shù)據(jù)進(jìn)行整合; 步驟3:采用橫向預(yù)測(cè)算法通過在時(shí)間周期內(nèi)兩個(gè)時(shí)間點(diǎn)之間的關(guān)系對(duì)步驟2得到的縱向預(yù)測(cè)數(shù)據(jù)進(jìn)行預(yù)測(cè),具體找到周期內(nèi)的數(shù)據(jù)的聯(lián)系,構(gòu)建關(guān)系模型,對(duì)尋找的所有時(shí)間周期內(nèi)存在的橫向關(guān)系存儲(chǔ)起來,然后進(jìn)行周期內(nèi)預(yù)測(cè),加權(quán)疊加預(yù)測(cè)結(jié)果,并通過反饋方式調(diào)整橫向關(guān)系,得到最終預(yù)測(cè)結(jié)果。
2.根據(jù)權(quán)利要求1所述的基于橫向縱向信息集成的分布式計(jì)算環(huán)境性能預(yù)測(cè)方法,其特征在于,步驟I具體為把歷史數(shù)據(jù)按照時(shí)間周期T轉(zhuǎn)化為多組子時(shí)間序列,其中: 歷史數(shù)據(jù)為:(X1,X2 , X3 ,...,X1J,長(zhǎng)度為η ; 每個(gè)子時(shí)間序列的長(zhǎng)度為Τ,切分成η/Τ個(gè)子時(shí)間序列,第i個(gè)子序列Si表示成Ixil,Xi2,Xi3,…,xiT},則把歷史數(shù)據(jù)切分成〈Si, S2,…,Si,…,SJ,其中L=n/T:
3.根據(jù)權(quán)利要求2所述的基于橫向縱向信息集成的分布式計(jì)算環(huán)境性能預(yù)測(cè)方法,其特征在于,步驟2包括以下步驟: 步驟21:使用指數(shù)型平滑曲線算法對(duì)第一步所有生成的時(shí)間序列進(jìn)行長(zhǎng)期預(yù)測(cè),預(yù)測(cè)的長(zhǎng)度為T步,預(yù)測(cè)結(jié)果如下:
4.根據(jù)權(quán)利要求3所述的基于橫向縱向信息集成的分布式計(jì)算環(huán)境性能預(yù)測(cè)方法,其特征在于,步驟3包括以下步驟: 步驟31:計(jì)算在同一個(gè)周期中數(shù)據(jù)之間的橫向關(guān)系 橫向關(guān)系指在時(shí)間周期內(nèi)兩個(gè)時(shí)間點(diǎn)之間的關(guān)系,具體如下: 假設(shè)兩個(gè)數(shù)據(jù)點(diǎn)為X、y,定義y=bx+a為X, y之間的橫向關(guān)聯(lián),其中,a, b為參數(shù); a,b參數(shù)直接從線性回歸處獲得,即線性回歸方法最小二乘法公式如下:
5.根據(jù)權(quán)利要求1所述的基于橫向縱向信息集成的分布式計(jì)算環(huán)境性能預(yù)測(cè)方法,其特征在于,還包括: 步驟4:動(dòng)態(tài)集成橫向縱向預(yù)測(cè)算法 對(duì)應(yīng)不同機(jī)器不同時(shí)間段,周期時(shí)間關(guān)聯(lián)性不是固定的的情況采用動(dòng)態(tài)橫向縱向預(yù)測(cè)算法,具體為: 假設(shè)預(yù)測(cè)將來長(zhǎng)度比較接近,所受到時(shí)間周期影響是一樣的,在每次預(yù)測(cè)時(shí),將歷史數(shù)據(jù)去掉最后相同的預(yù)測(cè)長(zhǎng)度,然后用一系列的候選時(shí)間周期分別調(diào)用橫向縱向預(yù)測(cè)算法預(yù)測(cè)并算出其誤差,將誤差最小的那個(gè)時(shí)間周期作為橫向縱向預(yù)測(cè)算法的參數(shù)用來預(yù)測(cè),即根據(jù)不同的時(shí)間周期,將橫向縱向預(yù)測(cè)算法變成多個(gè)預(yù)測(cè)器,根據(jù)上一次的預(yù)測(cè)結(jié)果,來選擇當(dāng)前最優(yōu)的時(shí)間周期對(duì)應(yīng)的預(yù)測(cè)器。
6.根據(jù)權(quán)利要求5所述的基于橫向縱向信息集成的分布式計(jì)算環(huán)境性能預(yù)測(cè)方法,其特征在于,步驟4中的候選時(shí)間周期分別為6小時(shí)、12小時(shí)、I天和I周。
【文檔編號(hào)】H04L12/24GK104010029SQ201410198278
【公開日】2014年8月27日 申請(qǐng)日期:2014年5月12日 優(yōu)先權(quán)日:2014年5月12日
【發(fā)明者】曹健, 楊定裕, 董樑, 顧驊, 沈琪駿, 王烺 申請(qǐng)人:上海交通大學(xué)