本發(fā)明涉及計算機技術領域,更具體地,涉及信息系統(tǒng)的資源分配及預測方法。
背景技術:
目前,在信息系統(tǒng)運維過程中,支撐應用系統(tǒng)運行的資源主要包括主機、數(shù)據(jù)庫和中間件等。一方面,系統(tǒng)運行前,因各應用系統(tǒng)的功能不同,其資源分配的量存在明顯的差異性;另一方面,系統(tǒng)運行時,資源動態(tài)分配所采用的傳統(tǒng)方法是由系統(tǒng)管理員在運行時按照應用系統(tǒng)的運行狀態(tài)進行手動調(diào)節(jié)。
由于運行時環(huán)境的諸多不確定因素,這種方法要求系統(tǒng)管理員24小時全程監(jiān)控系統(tǒng)的運行狀態(tài),并且需要快速地作出調(diào)整決策.這不但會增加系統(tǒng)管理員的負擔,而且準確性較差并有一定的時延。因此,如何對運行中的信息系統(tǒng)進行合理的分配及動態(tài)分配就變得很有必要了。
針對不同的應用場景,為了進行資源的合理分配以優(yōu)化資源配置,需要解決兩個問題:(1)如何在信息系統(tǒng)運行前進行資源預測及分配;(2)如何在信息系統(tǒng)運行時進行單個資源的預測及動態(tài)分配。
技術實現(xiàn)要素:
本發(fā)明提供一種克服上述問題或者至少部分地解決上述問題的方法。
本發(fā)明提供了一種信息系統(tǒng)的資源分配及預測方法,包括以下步驟:基于信息系統(tǒng)的運行中數(shù)據(jù),建立信息系統(tǒng)運行中資源動態(tài)預測模型,利用所述資源預測模型進行信息系統(tǒng)運行時的資源分配。
進一步,所述方法還包括以下步驟:基于信息系統(tǒng)的歷史數(shù)據(jù)建立信息系統(tǒng)運行前資源分配模型,利用所述資源分配模型進行系統(tǒng)運行前的資源分配。
進一步,所述步驟“基于信息系統(tǒng)的歷史數(shù)據(jù)建立信息系統(tǒng)運行前資源分配模型,利用所述資源分配模型進行信息系統(tǒng)運行前的資源分配?!边€包括以下步驟:
接收信息系統(tǒng)的歷史數(shù)據(jù);
建立基于3σ法則及概率密度函數(shù)的信息系統(tǒng)運行前資源分配模型,利用所述歷史數(shù)據(jù)及運行前資源分配模型獲得信息系統(tǒng)運行前資源需求區(qū)間值;
利用所述區(qū)間值進行信息系統(tǒng)運行前的資源分配。
進一步,所述步驟“建立基于3σ法則及概率密度函數(shù)的信息系統(tǒng)運行前資源分配模型,利用所述歷史數(shù)據(jù)及運行前資源分配模型獲得信息系統(tǒng)運行前資源需求區(qū)間值”還包括以下步驟:
利用3σ法則及所述歷史數(shù)據(jù),計算分別得到變量的均值u和方差σ,獲得需求資源的范圍區(qū)間[u-3σ,u+3σ];
利用核密度函數(shù)及所述歷史數(shù)據(jù),確定另一個需求資源的范圍區(qū)間[rbegin,rend];
取上述兩步驟所得范圍區(qū)間的交集,得到資源取值區(qū)間[min{u-3σ,rbegin},max{u+3σ,rend}];
利用所得取值區(qū)間[min{u-3σ,rbegin},max{u+3σ,rend}],確定信息系統(tǒng)運行前資源利用率分配值,該分配值≥max{u+3σ,rend}。
進一步,所述步驟“信息系統(tǒng)運行前資源利用率分配值”取值區(qū)間為[max{u+3σ,rend},2max{u+3σ,rend}]。
進一步,所述步驟“基于信息系統(tǒng)的運行中數(shù)據(jù),建立信息系統(tǒng)運行中資源動態(tài)預測模型,利用所述資源預測模型進行信息系統(tǒng)運行時的資源分配”還包括以下步驟:
接收信息系統(tǒng)的運行時數(shù)據(jù);
利用灰度預測模型及所述運行時數(shù)據(jù)建立資源預測模型;
利用所述資源預測模型進行信息系統(tǒng)運行時的資源分配。
進一步,所述步驟“利用所述資源預測模型進行信息系統(tǒng)運行時的資源分配?!睘槔盟鲑Y源預測模型進行單個資源動態(tài)分配。
進一步,所述“利用灰度預測模型及所述運行時數(shù)據(jù)建立資源預測模型”還包括以下步驟:根據(jù)某監(jiān)控指標前n個時刻的資源使用值得到該監(jiān)控指標下一時刻的資源預測使用值,此時只要設定一個分配因子λ,用資源預測值除以該分配因子即可得出下一時刻的資源分配值。
進一步,所述步驟“灰度預測模型及所述運行時數(shù)據(jù)建立資源預測模型”建立方式具體包括以下步驟:
利用如下公式計算得出資源分配值:
λ(n+1)=r(n);
其中n為某監(jiān)控指標前n個時刻的資源使用值、λ為分配因子、r為實際資源利用率、σ(n+1)是某監(jiān)控指標資源在n+1時刻的資源分配值、為根據(jù)某監(jiān)控指標前n個時刻的資源使用值得到該監(jiān)控指標下一時刻的資源預測使用值。
本發(fā)明還提供了一種信息系統(tǒng)的資源分配及預測裝置,包括:
接收模塊,用于接收信息系統(tǒng)的歷史數(shù)據(jù)、信息系統(tǒng)的運行時數(shù)據(jù);
處理模塊,用于建立基于3σ法則及概率密度函數(shù)的信息系統(tǒng)運行前資源分配模型,利用所述歷史數(shù)據(jù)及運行前資源分配模型獲得信息系統(tǒng)運行前資源需求區(qū)間值;用于利用灰度預測模型及所述運行時數(shù)據(jù)建立資源預測模型;
分配模塊,利用所述區(qū)間值進行信息系統(tǒng)運行前的資源分配;利用所述資源預測模型進行信息系統(tǒng)運行時的資源分配。
進一步,所述處理模塊還包括:
3σ法則處理單元,用于利用3σ法則及所述歷史數(shù)據(jù),計算分別得到變量的均值u和方差σ,獲得范圍區(qū)間[u-3σ,u+3σ];
概率密度函數(shù)處理單元,用于利用核密度函數(shù)及所述歷史數(shù)據(jù),確定另一個需求資源的取值范圍區(qū)間[rbegin,rend];
灰度預測模型處理單元,用于利用灰度預測模型及所述運行時數(shù)據(jù)建立資源預測模型。
本申請?zhí)岢隽艘环N信息系統(tǒng)的資源分配及預測方法,分別采用了核密度估計與3σ法則進行信息系統(tǒng)運行前的資源分配和基于灰度預測模型與改進的控制論進行信息系統(tǒng)運行時的資源動態(tài)分配,通過上述技術手段,可以準確、快速地進行信息系統(tǒng)運行前的資源分配和運行時的資源動態(tài)分配。
附圖說明
圖1為根據(jù)本發(fā)明實施例的資源分配及預測方法的信息系統(tǒng)運行前資源分配步驟的具體流程示意圖。
圖2為根據(jù)本發(fā)明實施例的資源分配及預測方法的信息系統(tǒng)運行時資源分配步驟的具體流程示意圖。
圖3為根據(jù)本發(fā)明實施例的資源分配及預測裝置的結(jié)構(gòu)示意圖。
具體實施方式
下面結(jié)合附圖和實施例,對本發(fā)明的具體實施方式作進一步詳細描述。以下實施例用于說明本發(fā)明,但不用來限制本發(fā)明的范圍。
總的來說,該方法包括:S1,基于信息系統(tǒng)的運行中數(shù)據(jù),建立信息系統(tǒng)運行中資源動態(tài)預測模型;S2,利用所述資源預測模型進行信息系統(tǒng)運行時的資源分配。
在一個具體實施例中,以某信息系統(tǒng)CPU利用率的分配及預測為例來說明圖1、圖2所示的方法的具體步驟。可以理解,所采用的歷史數(shù)據(jù)或者運行數(shù)據(jù)不限于CPU利用率;該方法中所采用的上述數(shù)據(jù)能夠有兩種來源:從監(jiān)控系統(tǒng)中獲得的性能指標數(shù)據(jù)、從日志文件中獲得的相關數(shù)據(jù)。
如圖1所示,該應用場景為某信息系統(tǒng)服務器運行前CPU利用率的資源分配及預測過程。該方法包括:
S101,通過監(jiān)控系統(tǒng)獲得一個月的監(jiān)控數(shù)據(jù)(CPU利用率);
S102,利用所述監(jiān)控數(shù)據(jù)建立信息系統(tǒng)運行前資源分配模型;
S103,對二者的取值范圍求交集,就可以得到一個更為精確的資源取值區(qū)間[min{u-3σ,rbegin},max{u+3σ,r end}];
S104,通過該取值范圍可以為信息系統(tǒng)運行前的資源分配提供精準指導。
其中,所述步驟S102具體又包括以下步驟:
S1021,利用3σ法則及所述監(jiān)控數(shù)據(jù),計算分別得到變量的均值u和方差σ,需要資源的取值范圍設在區(qū)間[u-3σ,u+3σ]內(nèi)。(備注:根據(jù)概率論的知識,落在此閾值范圍內(nèi)的概率為97.38%,落在此范圍外數(shù)據(jù)的概率僅為2.72%,屬于小概率事件。)
S1021,利用核密度函數(shù)及所述監(jiān)控數(shù)據(jù),確定另外一個需求資源的取值范圍,得到另外一個資源取值范圍區(qū)間[rbegin,r end]。
如圖2所示,該應用場景為某信息系統(tǒng)服務器運行時CPU利用率的資源動態(tài)分配過程。
該方法包括:
S201,接收信息系統(tǒng)的運行時數(shù)據(jù);
S202,利用灰度預測模型及所述運行時數(shù)據(jù)建立資源預測模型;
S203,利用預測值進行資源動態(tài)分配。
其中,步驟S202中,上述推導已經(jīng)根據(jù)某監(jiān)控指標前n個時刻的資源使用值得到該監(jiān)控指標下一時刻的資源預測使用值,此時只要設定一個分配因子λ,用資源預測值除以該分配因子即可得出下一時刻的資源分配值。分配因子λ就是自適應控制器的控制參數(shù).在此,將分配因子λ初始化為上一時刻的實際資源利用率r。這樣資源利用率、資源預測值及資源分配值3個參數(shù)之間就建立了數(shù)學關系,有
λ(n+1)=r(n) (3)
式(3)和式(4)給出了資源分配值的計算過程,其中,σ(n+1)指某監(jiān)控指標資源在n+1時刻的資源分配值,為根據(jù)某監(jiān)控指標前n個時刻的資源使用值得到該監(jiān)控指標下一時刻的資源預測使用值。
下面根據(jù)圖3所示本發(fā)明裝置結(jié)構(gòu)圖來對本發(fā)明一種基于數(shù)字模型的智能化資源分配及預測裝置進行進一步說明,所述裝置包括:
接收模塊A1,用于接收信息系統(tǒng)的歷史數(shù)據(jù)、信息系統(tǒng)的運行時數(shù)據(jù);
處理模塊A2,用于建立基于3σ法則及概率密度函數(shù)的信息系統(tǒng)運行前資源分配模型,利用所述歷史數(shù)據(jù)及運行前資源分配模型獲得信息系統(tǒng)運行前資源需求區(qū)間值;用于利用灰度預測模型及所述運行時數(shù)據(jù)建立資源預測模型;
分配模塊A3,利用所述區(qū)間值進行信息系統(tǒng)運行前的資源分配;利用所述資源預測模型進行信息系統(tǒng)運行時的資源分配。
進一步,所述處理模A2塊還包括:
3σ法則處理單元A201,用于利用3σ法則及所述歷史數(shù)據(jù),計算分別得到變量的均值u和方差σ,獲得范圍區(qū)間[u-3σ,u+3σ];
概率密度函數(shù)處理單元A202,用于利用核密度函數(shù)及所述歷史數(shù)據(jù),確定另一個需求資源的取值范圍區(qū)間[rbegin,rend];
灰度預測模型處理單元A203,用于利用灰度預測模型及所述運行時數(shù)據(jù)建立資源預測模型。
進一步,所述分配模塊A3還包括:
信息系統(tǒng)運行前資源分配單元A301,用于利用所述區(qū)間值進行信息系統(tǒng)運行前的資源分配;
信息系統(tǒng)運行時資源分配單元A302,用于利用所述資源預測模型進行信息系統(tǒng)運行時的資源分配。
進一步,所述接收模塊A1還包括:
信息系統(tǒng)歷史數(shù)據(jù)接收單元A101,用于接收信息系統(tǒng)的歷史數(shù)據(jù);
信息系統(tǒng)運行時數(shù)據(jù)接收單元A102,用于接收信息系統(tǒng)的運行時數(shù)據(jù)。
最后,本申請的方法僅為較佳的實施方案,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。