專利名稱:一種云計(jì)算資源預(yù)分配實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明屬于云計(jì)算資源管理領(lǐng)域,具體涉及ー種云計(jì)算資源預(yù)分配實(shí)現(xiàn)方法與系統(tǒng)。
背景技術(shù):
在數(shù)據(jù)中心中,虛擬機(jī)的資源分配問題是IT管理員維護(hù)云計(jì)算環(huán)境的ー個(gè)基本問題。傳統(tǒng)的分配方式基本上都是根據(jù)用戶的實(shí)際請求來實(shí)時(shí)分配的,這樣的分配必然存在ー些潛在的問題,比如,如果整個(gè)系統(tǒng)處于繁忙的狀態(tài)或請求突發(fā)性太強(qiáng),就會造成較大的處理延時(shí);而且,用戶的資源需求有可能無法滿足,這會極大地影響用戶的滿意度。所以,傳統(tǒng)的分配方式往往要求用戶提前很長時(shí)間就提出資源請求,這給用戶帶來了ー些不便。另外,對于物理資源的購置,多依靠管理員的個(gè)人經(jīng)驗(yàn),缺乏專門的機(jī)制為管理員提供相關(guān)的參考信息。通過對云計(jì)算環(huán)境使用記錄的分析,可以得到以下幾個(gè)特點(diǎn):I)云計(jì)算環(huán)境中通常存在一定數(shù)量的空閑資源來滿足可能的需求;2)對于特定類型的云計(jì)算環(huán)境,可能存在多種類型的虛擬機(jī),比如根據(jù)安裝的操作系統(tǒng)、中間件或應(yīng)用來分類;3)對于ー個(gè)長期運(yùn)行的云計(jì)算環(huán)境中可以獲得大量詳細(xì)的用戶請求歷史記錄。本發(fā)明是在國家863計(jì)劃項(xiàng)目基金資助下,針對傳統(tǒng)資源分配存在的問題,提出了一種云計(jì)算環(huán)境中資源預(yù)分配模型。
發(fā)明內(nèi)容
云計(jì)算環(huán)境中資源預(yù)分配問題主要涉及各種類型的虛擬機(jī)和各種物理資源,預(yù)分配問題可以轉(zhuǎn)化為ー個(gè)需求預(yù)測的問題,它具有以下幾個(gè)特點(diǎn):I)用戶使用某類虛擬機(jī)或某個(gè)資源的可能是可以預(yù)測的;2)在使用初期,稀疏的數(shù)據(jù)盡管不能產(chǎn)生有效的預(yù)測,但隨著使用的増加,這種預(yù)測會越來越準(zhǔn)確;3)時(shí)間是一個(gè)關(guān)鍵的因素,這種預(yù)測與時(shí)間是相關(guān)的,可分為短期的和長期的預(yù)測。本發(fā)明目的在于提供ー種基于時(shí)間序列的組合資源預(yù)測方法,在獲取用戶請求歷史記錄后,按照虛擬機(jī)類型分別統(tǒng)計(jì)每一天用戶的請求數(shù)量,建立基于虛擬機(jī)類型的時(shí)間序列,然后利用組合預(yù)測模型來預(yù)測下ー階段的請求情況。1、宏觀資源需求預(yù)測基于用戶請求歷史記錄建立時(shí)間序列組合預(yù)測模型,可以對未來的資源請求狀況作一個(gè)宏觀的預(yù)測。在保障一定的精度條件下,避免了對單個(gè)用戶的過度關(guān)注,實(shí)現(xiàn)相對簡単。從宏觀的角度上預(yù)測,更有利著眼于用戶請求的動(dòng)態(tài)性(發(fā)展性、規(guī)律性和穩(wěn)定性)。由于應(yīng)用場景的不同精度差異較大,可以選擇不同的預(yù)測模型來進(jìn)行判斷。在給定需要預(yù)測的某個(gè)時(shí)間的前提下,預(yù)測結(jié)果為每種虛擬機(jī)類型的總請求量。2、周資源請求預(yù)測根據(jù)對用戶請求數(shù)據(jù)的分析,需求一般隨著周一到周日呈現(xiàn)出規(guī)律分布。所以根據(jù)周一到周日分別建模預(yù)測,而且本周的數(shù)據(jù)訓(xùn)練完畢后就能對下一周的需求進(jìn)行單步的預(yù)測,精度較高。另外,模型預(yù)測還應(yīng)當(dāng)滿足短期的預(yù)測,比如下一周虛擬機(jī)的請求量和長期的預(yù)測,比如作為擴(kuò)容購置新設(shè)備的評判標(biāo)準(zhǔn)。對于短期預(yù)測,用上述模型能較為精準(zhǔn)地做出判斷。對于長期的預(yù)測,就要用到預(yù)測技術(shù)中的多步預(yù)測,相對精度較低。3、物理資源預(yù)測此外,還可以分析需要的具體物理資源的數(shù)量,比如內(nèi)存、磁盤和CPU等需求。對具體物理資源可以做出相對長期的預(yù)測,以便提示管理員做出購買與否的決定和協(xié)助管理員確定具體購買量的決策。此時(shí),需要給出每種虛擬機(jī)類型的物理資源配置,同時(shí)能很好地實(shí)現(xiàn)由虛擬機(jī)數(shù)量到物理資源數(shù)量的轉(zhuǎn)換。ー種云計(jì)算資源預(yù)分配實(shí)現(xiàn)方法,該方法包括下述步驟:第一歩:數(shù)據(jù)采集,以預(yù)定時(shí)間窗ロ搜集歷史數(shù)據(jù);為防止處理的歷史數(shù)據(jù)過多,或者適應(yīng)模型初期的稀疏數(shù)據(jù),可以縮小時(shí)間窗ロ以匹配樣本大小,比如ー個(gè)月,甚至ー個(gè)星期,當(dāng)然這會帶來一定的誤差;第二步:數(shù)據(jù)清洗,過濾掉請求次數(shù)少于預(yù)定次數(shù)的用戶的請求;第三步:模型訓(xùn)練,基于時(shí)間與虛擬機(jī)類型的矩陣建立組合預(yù)測模型,然后根據(jù)時(shí)間窗ロ持續(xù)地導(dǎo)入清洗后的數(shù)據(jù)進(jìn)行模型訓(xùn)練,直到填滿時(shí)間窗ロ,完成模型收斂;第四步:數(shù)據(jù)預(yù)測,基于訓(xùn)練好的組合預(yù)測模型,對給定時(shí)間的資源請求做宏觀預(yù)測;根據(jù)周資源預(yù)測模型,可以對下一周的需求進(jìn)行單步的預(yù)測。此外,還可以分析具體物理資源的需求數(shù)量;第五步:結(jié)果處理,根據(jù)應(yīng)用場景的需求,展示預(yù)定的結(jié)果視圖。在給定預(yù)測時(shí)間的前提下,預(yù)測結(jié)果包括每種虛擬機(jī)類型的總需求量、下一周虛擬機(jī)的需求量、具體物理資源的需求量;還包括有結(jié)果驗(yàn)證,其用于將數(shù)據(jù)預(yù)測的結(jié)果與實(shí)際數(shù)據(jù)對比,得出預(yù)測的平均準(zhǔn)確度,通過調(diào)整算法的參數(shù),來訓(xùn)練適合當(dāng)前應(yīng)用場景的模型。對模型準(zhǔn)確度的不斷評估保證系統(tǒng)有效性,以達(dá)到更好的準(zhǔn)確度。上述第二步的數(shù)據(jù)清洗中,當(dāng)數(shù)據(jù)比較稀疏時(shí),根據(jù)請求資源的相似性聚合成分類,將一天中某ー類請求歸為ー個(gè)請求。這樣可以提高預(yù)測的準(zhǔn)確度。本發(fā)明與現(xiàn)有技術(shù)相比,具有如下優(yōu)點(diǎn):I)基于歷史資源請求數(shù)據(jù)預(yù)測云計(jì)算環(huán)境在一段時(shí)間內(nèi)的資源需求情況。2)根據(jù)每周用戶請求的規(guī)律預(yù)測用戶在一周內(nèi)每天的請求情況,實(shí)現(xiàn)短期精準(zhǔn)預(yù)測。3)實(shí)現(xiàn)對具體物理資源需求的預(yù)測,通過檢查云計(jì)算環(huán)境中資源的狀態(tài),對緊缺資源進(jìn)行預(yù)警。該預(yù)分配模型通過對歷史數(shù)據(jù)的分析,預(yù)測資源的需求狀況,對空閑資源進(jìn)行預(yù)分配,而且使預(yù)分配的虛擬機(jī)數(shù)量保持在一定的比例水平,如果需求有增長(減少)趨勢,那就適當(dāng)增加(減少)預(yù)安裝的數(shù)量。這樣帶來的好處有:不僅可以應(yīng)對一定數(shù)量的突發(fā)請求,提高用戶請求的響應(yīng)速度,進(jìn)而提高用戶滿意度;還可以為管理員提供物理資源(比如內(nèi)存、磁盤和CPU等)購置的參考信息,進(jìn)而檢查云計(jì)算環(huán)境中資源是否處于緊缺的狀態(tài),以便提前購買相應(yīng)的資源。
圖1為資源預(yù)測模型建立流程圖。
具體實(shí)施例方式下面結(jié)合附圖和具體實(shí)施方式
對本發(fā)明的內(nèi)容做進(jìn)ー步詳細(xì)說明。實(shí)施例:本發(fā)明提出ー種基于時(shí)間序列的組合資源預(yù)測方法,在獲取用戶請求歷史記錄后,按照虛擬機(jī)類型分別統(tǒng)計(jì)每一天用戶的請求數(shù)量,建立基于虛擬機(jī)類型的時(shí)間序列,然后利用組合預(yù)測模型來預(yù)測下ー階段的請求情況。下面結(jié)合附圖詳細(xì)說明本發(fā)明的實(shí)施步驟。根據(jù)對問題的分析,為了建立時(shí)間與虛擬機(jī)類型的矩陣,需要對歷史數(shù)據(jù)進(jìn)行預(yù)處理,然后進(jìn)行模型訓(xùn)練。這個(gè)處理流程可以分成幾個(gè)步驟:數(shù)據(jù)采集、數(shù)據(jù)清洗、模型訓(xùn)練、數(shù)據(jù)預(yù)測、結(jié)果處理和驗(yàn)證,其相互關(guān)系和流程如圖1所示。第一歩:數(shù)據(jù)采集搜集的過程是從歷史請求記錄數(shù)據(jù)中抽取指定時(shí)間段的數(shù)據(jù);比如從歷史請求記錄中以一年的時(shí)間窗ロ抽取數(shù)據(jù),利用時(shí)間窗ロ解決動(dòng)態(tài)預(yù)測的問題,為防止處理的歷史數(shù)據(jù)過多,或者適應(yīng)模型初期的稀疏數(shù)據(jù),可以縮小時(shí)間窗ロ以匹配樣本大小,比如ー個(gè)月,甚至ー個(gè)星期,當(dāng)然這會帶來一定的誤差。主要提取以下數(shù)據(jù):用戶名、請求時(shí)間、請求虛擬機(jī)類型、請求數(shù)量,并完成對數(shù)據(jù)格式的轉(zhuǎn)換以便后續(xù)模塊的使用。第二步:數(shù)據(jù)清洗為了減少需要處理的數(shù)據(jù)量和使需求更有規(guī)律,可以過濾掉請求次數(shù)少于3次的用戶的請求,這個(gè)閾值可以根據(jù)數(shù)據(jù)的情況調(diào)整,首先將用戶按請求次數(shù)排序,然后計(jì)算閾值: T= (1-p) X Countmax+p X Countmin其中,T為閾值,p為計(jì)劃保留的請求數(shù)據(jù)比例,比如0.8,p為I意味著保留所有請求數(shù)據(jù)。Countniax表示最大請求次數(shù),Countmin表示最小請求次數(shù)。另外,在數(shù)據(jù)比較稀疏時(shí),可以根據(jù)請求資源的相似性聚合成分類,將一天中某一類請求歸為ー個(gè)請求,這樣可以提高預(yù)測的準(zhǔn)確度。第三步:模型訓(xùn)練模型訓(xùn)練首先需要基于時(shí)間與虛擬機(jī)類型的矩陣建立預(yù)測模型,然后根據(jù)時(shí)間窗ロ持續(xù)地導(dǎo)入訓(xùn)練數(shù)據(jù)直到模型收斂。I)模型的建立在完成數(shù)據(jù)清洗后,按照虛擬機(jī)類型分別統(tǒng)計(jì)每一天用戶的請求數(shù)量,建立基于虛擬機(jī)類型的時(shí)間序列,然后利用預(yù)測模型來預(yù)測下ー階段的請求情況。下表展示了時(shí)間與虛擬機(jī)類型的矩陣,表頭是請求時(shí)間和各種虛擬機(jī)類型,矩陣的值是某個(gè)時(shí)間所請求的某類虛擬機(jī)的數(shù)量。
權(quán)利要求
1.一種云計(jì)算資源預(yù)分配實(shí)現(xiàn)方法,其特征在于,該方法包括下述步驟: 第一歩:數(shù)據(jù)采集,以預(yù)定時(shí)間窗ロ搜集歷史數(shù)據(jù); 第二步:數(shù)據(jù)清洗,過濾掉請求次數(shù)少于預(yù)定次數(shù)的用戶請求; 第三步:模型訓(xùn)練,基于時(shí)間與虛擬機(jī)類型的矩陣建立組合預(yù)測模型,然后根據(jù)時(shí)間窗ロ持續(xù)地導(dǎo)入清洗后的數(shù)據(jù)進(jìn)行模型訓(xùn)練,直到填滿時(shí)間窗ロ,完成模型收斂; 第四步:數(shù)據(jù)預(yù)測,基于訓(xùn)練好的組合預(yù)測模型,對給定時(shí)間的資源請求做預(yù)測; 第五歩:結(jié)果處理,根據(jù)應(yīng)用場景的需求,展示預(yù)定的結(jié)果視圖,在給定預(yù)測時(shí)間的前提下,預(yù)測結(jié)果包括每種虛擬機(jī)類型的總需求量、下一周虛擬機(jī)的需求量、具體物理資源的需求量。
2.按權(quán)利要求1所述的ー種云計(jì)算資源預(yù)分配實(shí)現(xiàn)方法,其特征在于:還包括有結(jié)果驗(yàn)證,其用于將數(shù)據(jù)預(yù)測的結(jié)果與實(shí)際數(shù)據(jù)對比,得出預(yù)測的平均準(zhǔn)確度。
3.按權(quán)利要求1所述的ー種云計(jì)算資源預(yù)分配實(shí)現(xiàn)方法,其特征在于:上述第二步的數(shù)據(jù)清洗中,當(dāng)數(shù)據(jù)比較稀疏時(shí),根據(jù)請求資源的相似性聚合成分類,將一天中某一類請求歸為ー個(gè)請求。
全文摘要
本發(fā)明提出了云計(jì)算環(huán)境中資源預(yù)分配的方法,詳細(xì)地分析了模型的設(shè)計(jì)和實(shí)現(xiàn),通過預(yù)測可能的用戶請求,幫助IT管理員提前部署各種類型的虛擬機(jī)來滿足突發(fā)的請求;同時(shí)針對具體的資源類型,預(yù)測可能的物理資源需求,以便提前購買相應(yīng)的資源。數(shù)據(jù)采集;數(shù)據(jù)清洗,過濾掉請求次數(shù)少于預(yù)定次數(shù)的用戶的請求;模型訓(xùn)練,基于時(shí)間與虛擬機(jī)類型的矩陣建立組合預(yù)測模型,然后根據(jù)時(shí)間窗口持續(xù)地導(dǎo)入清洗后的數(shù)據(jù)進(jìn)行模型訓(xùn)練,直到填滿時(shí)間窗口,完成模型收斂;數(shù)據(jù)預(yù)測,基于訓(xùn)練好的組合預(yù)測模型,對給定時(shí)間的資源請求做預(yù)測;結(jié)果處理,在給定預(yù)測時(shí)間的前提下,預(yù)測結(jié)果包括每種虛擬機(jī)類型的總需求量、下一周虛擬機(jī)的需求量、具體物理資源的需求量。
文檔編號G06F9/50GK103092699SQ20131000860
公開日2013年5月8日 申請日期2013年1月10日 優(yōu)先權(quán)日2013年1月10日
發(fā)明者王朝碩, 周震震, 朱永虎, 田應(yīng)富, 高錫明, 曾春, 朱義, 郭涑煒, 邢春曉 申請人:中國南方電網(wǎng)有限責(zé)任公司超高壓輸電公司, 清華大學(xué)