云平臺的任務執(zhí)行方法
【專利摘要】本發(fā)明提供了一種云平臺的任務執(zhí)行方法,該方法包括:將計算節(jié)點剩余資源量大于用戶業(yè)務請求集合總資源量的計算節(jié)點組成第一集合,對云平臺中的計算節(jié)點進行聚類,計算上述計算節(jié)點之間的近似度,將近似度在閾值內(nèi)的計算節(jié)點加入第二集合,將待處理的業(yè)務調(diào)度至第二集合中的計算節(jié)點。本發(fā)明提出了一種云平臺的任務執(zhí)行方法,提高了云平臺數(shù)據(jù)服務器的吞吐率,優(yōu)化了數(shù)據(jù)服務器對外服務性能,具有更好的調(diào)度平衡效果。
【專利說明】
云平臺的任務執(zhí)行方法
技術(shù)領域
[0001 ]本發(fā)明涉及云計算,特別涉及一種云平臺的任務執(zhí)行方法。
【背景技術(shù)】
[0002] 云計算作為一種新型的計算模式和服務模式,它將大量的計算業(yè)務分布式的分派 給由底層云平臺計算機硬件組成的資源池中,在科研、生產(chǎn)和貿(mào)易服務領域有著廣泛應用。 由于數(shù)據(jù)服務器資源池是由海量的硬件資源共同組成的,而且計算機數(shù)量非常龐大,組成 復雜,資源的配置差異較大,當大規(guī)模的計算業(yè)務需要數(shù)據(jù)服務器處理時,這時就會導致數(shù) 據(jù)服務器的負載不平衡。而負載的不平衡會造成吞吐率的下降以及響應時間的增加,在一 定程度上影響了云平臺為用戶提供的服務質(zhì)量。針對云計算數(shù)據(jù)服務器,不同的業(yè)務調(diào)度 策略會造成整個系統(tǒng)具有不同的負載分配情況,從而導致具有不同的執(zhí)行效率和對外計算 服務能力,最優(yōu)的業(yè)務調(diào)度策略應該是一種能夠使整個云計算系統(tǒng)產(chǎn)生負載平衡效果的策 略。在現(xiàn)有的負載平衡策略中,往往需要維護額外的歷史數(shù)據(jù),這將導致系統(tǒng)的冗余負載, 并且估計負載的效果并不是非常理想。
【發(fā)明內(nèi)容】
[0003] 為解決上述現(xiàn)有技術(shù)所存在的問題,本發(fā)明提出了一種云平臺的任務執(zhí)行方法, 包括:
[0004] 將計算節(jié)點剩余資源量大于用戶業(yè)務請求集合總資源量的計算節(jié)點組成第一集 合,
[0005] 對云平臺中的計算節(jié)點進行聚類,
[0006] 計算上述計算節(jié)點之間的近似度,
[0007]將近似度在閾值內(nèi)的計算節(jié)點加入第二集合,
[0008] 將待處理的業(yè)務調(diào)度至第二集合中的計算節(jié)點。
[0009] 優(yōu)選地,所述方法進一步包括:
[0010] 步驟1:將數(shù)據(jù)服務器的η臺計算節(jié)點組成一個集合H,對數(shù)據(jù)服務器中的全部計算 節(jié)點進行一個約束條件限制,將計算節(jié)點的剩余資源量1^作為度量標準,1^定義如下:
[0011] Li = aLc+PLm
[0012] 其中 α+β=1
[0013] Lc為處理器剩余;Lm為存儲器剩余;a為處理器權(quán)重;β為存儲器權(quán)重;a和β值的采用 ΒΡ神經(jīng)網(wǎng)絡學習確定,根據(jù)計算節(jié)點性能的適應性函數(shù),獲取整個數(shù)據(jù)服務器中計算節(jié)點 的各項性能監(jiān)控數(shù)據(jù),包括處理器和存儲器數(shù)據(jù),計算出當前云平臺數(shù)據(jù)服務器中η臺計算 節(jié)點的剩余資源量;將約束值定義為特定時間段內(nèi)接收到的業(yè)務請求集合的總資源量,即:
[0015]其中,LR表示為業(yè)務請求集合的總資源量,匕表示為業(yè)務請求集合中第i個業(yè)務 的資源量;定義一個空集s,計算出業(yè)務請求集合的總資源量LR,當Li>LR時,將i計算節(jié)點調(diào) 度至集合S中,否則繼續(xù)尋找,當η臺計算節(jié)點與約束值比較完成后得到的集合S,集合S = {si,S2,S3 ,Sm},即為聚類點的集合,m<n;
[0016]步驟2:根據(jù)計算節(jié)點性能的適應性函數(shù)得到每臺計算節(jié)點的性能值,通過和約束 值的限定,將計算節(jié)點的處理器剩余和存儲器剩余作為計算節(jié)點的兩個屬性;設S= { SI,S2, S3--,Sm}為m個計算節(jié)點組成的集合,對集合S中的計算節(jié)點的處理器剩余進行降序排序, 假設~為處理器剩余最大的計算節(jié)點,將~作為聚類點,則計算近似度的公式為:
[0018] s(si,sj) = l/d(si,sj)
[0019] <為計算節(jié)點j的第k個屬性,由此計算出計算節(jié)點j與計算節(jié)點i之間的近似度S (si,sj):
[0021] 步驟3:以~為聚類點,計算~與集合Η中各個元素之間的近似度值;根據(jù)近似度給 定一個閾值U,如果近似度大于閾值U,則將該元素加入新集合S'中。然后集合S按照計算節(jié) 點處理器剩余的降序依次選擇聚類點,分別計算與集合Η中元素的近似度,將閾值大于U的 元素調(diào)度至集合S'中,當集合S'中元素不再變化時,則迭代結(jié)束,集合S'為最終的聚類結(jié) 果,即S' = {si',S2 ' · · · Sq'},其中q<m<n;
[0022] 步驟4:將數(shù)據(jù)服務器接收的業(yè)務請求調(diào)度至集合S'中的計算節(jié)點,然后集合S'中 的計算節(jié)點處理請求的業(yè)務集合,處理完成后將結(jié)果返回給用戶;數(shù)據(jù)服務器在從集合S' 中計算節(jié)點開始處理業(yè)務到處理完成的特定時間段內(nèi)接收的業(yè)務請求數(shù)作為下一次待處 理的業(yè)務;
[0023] 步驟5:在下一時間段內(nèi)重復步驟1-4的過程。
[0024] 本發(fā)明相比現(xiàn)有技術(shù),具有以下優(yōu)點:
[0025]本發(fā)明提出了一種云平臺的任務執(zhí)行方法,提高了云平臺數(shù)據(jù)服務器的吞吐率, 優(yōu)化了數(shù)據(jù)服務器對外服務性能,具有更好的調(diào)度平衡效果。
【附圖說明】
[0026] 圖1是根據(jù)本發(fā)明實施例的云平臺的任務執(zhí)行方法的流程圖。
【具體實施方式】
[0027] 下文與圖示本發(fā)明原理的附圖一起提供對本發(fā)明一個或者多個實施例的詳細描 述。結(jié)合這樣的實施例描述本發(fā)明,但是本發(fā)明不限于任何實施例。本發(fā)明的范圍僅由權(quán)利 要求書限定,并且本發(fā)明涵蓋諸多替代、修改和等同物。在下文描述中闡述諸多具體細節(jié)以 便提供對本發(fā)明的透徹理解。出于示例的目的而提供這些細節(jié),并且無這些具體細節(jié)中的 一些或者所有細節(jié)也可以根據(jù)權(quán)利要求書實現(xiàn)本發(fā)明。
[0028] 本發(fā)明的一方面提供了一種云平臺的任務執(zhí)行方法。圖1是根據(jù)本發(fā)明實施例的 云平臺的任務執(zhí)行方法流程圖。
[0029] 本發(fā)明根據(jù)業(yè)務調(diào)度方法的體系結(jié)構(gòu),分解成多個功能模塊,共同組成一個完整 的業(yè)務調(diào)度系統(tǒng)。然后,在系統(tǒng)體系結(jié)構(gòu)的基礎上,提出了一種云計算平臺下的業(yè)務調(diào)度方 法,實現(xiàn)了云平臺數(shù)據(jù)服務器的負載平衡。在本發(fā)明所運行的體系結(jié)構(gòu)中,控制節(jié)點的功能 是根據(jù)當前調(diào)度策略與最優(yōu)調(diào)度策略和隨機調(diào)度策略進行業(yè)務調(diào)度,調(diào)度完成后比較三種 策略在云平臺數(shù)據(jù)服務器整體負載平衡程度和調(diào)度業(yè)務的效能,然后根據(jù)估計的結(jié)果找出 一個最優(yōu)的業(yè)務調(diào)度策略。控制節(jié)點可以根據(jù)當前云平臺中的計算節(jié)點信息計算出哪個計 算節(jié)點的剩余資源量是多少以及每臺計算節(jié)點中的虛擬機的運行狀態(tài)。同時,在業(yè)務調(diào)度 策略中還有用于接收業(yè)務調(diào)度的請求和計算節(jié)點狀態(tài)信息等控制節(jié)點,這種節(jié)點的作用是 控制調(diào)度方法的執(zhí)行流程和周期。
[0030] 所有的節(jié)點通過網(wǎng)絡直接或間接的互相連接組成了云平臺數(shù)據(jù)服務器。只有主控 制節(jié)點才能觸發(fā)調(diào)度策略模塊,由控制節(jié)點決定最終的業(yè)務調(diào)度策略。在其他控制節(jié)點同 樣設置調(diào)度策略模塊,在主控制節(jié)點出現(xiàn)異常狀態(tài)下,其他控制節(jié)點會選取處理能力最高 的節(jié)點作為主控制節(jié)點,然后讓其節(jié)點內(nèi)的業(yè)務調(diào)度模塊進行工作。
[0031 ]在業(yè)務調(diào)度策略的控制節(jié)點包括調(diào)度策略模塊、調(diào)度控制模塊以及監(jiān)控器模塊; 計算節(jié)點包括發(fā)送模塊和接收模塊;用戶端包括用于發(fā)送業(yè)務請求的發(fā)送模塊和用于接收 計算結(jié)果的接收模塊。整體邏輯流程如下:首先,當計算節(jié)點上監(jiān)控器確定有用戶請求業(yè)務 時,用戶通過發(fā)送模塊將請求業(yè)務的信息發(fā)送給監(jiān)控器模塊,監(jiān)控器模塊獲取了特定時間 段內(nèi)用戶請求業(yè)務的資源量和數(shù)據(jù)服務器中計算節(jié)點的剩余資源量信息,包括處理器剩余 和存儲器剩余,監(jiān)控器模塊會將這些信息整理后發(fā)送給下一級模塊,即解析模塊。
[0032] 解析模塊動態(tài)的解析收集到的業(yè)務信息和計算節(jié)點的計算節(jié)點信息,進行具體的 解析過程,在解析完成后將數(shù)據(jù)通過解析模塊發(fā)送給估計模塊。當估計模塊接收來自解析 發(fā)送的數(shù)據(jù)時,立即解析其接收的數(shù)據(jù)。本發(fā)明的估計模塊需要完成性能參數(shù)的計算和估 計,即使用本發(fā)明的業(yè)務調(diào)度策略后調(diào)度業(yè)務的效能和負載平衡度值。
[0033] 估計模塊將估計的信息、計算節(jié)點狀態(tài)信息以及請求業(yè)務的信息發(fā)送給調(diào)度策略 模塊,然后根據(jù)本發(fā)明提出的方法生成相應的調(diào)度策略,然后將調(diào)度策略和相關(guān)信息傳送 給調(diào)度控制器,調(diào)度控制器解析最終得到的數(shù)據(jù)并發(fā)送指令到相應的計算節(jié)點的接收模 塊,控制器的作用是控制和執(zhí)行調(diào)度業(yè)務。最后,將特定時間段內(nèi)收集的業(yè)務請求調(diào)度到通 過調(diào)度策略模塊找到的最優(yōu)計算節(jié)點上。
[0034]用戶模塊觸發(fā)整個系統(tǒng)正常運轉(zhuǎn),在一個特定時間段內(nèi)收集到的多個用戶的業(yè)務 請求信息,用戶模塊將這些用戶的業(yè)務請求信息匯總,然后將這些業(yè)務請求信息通過用戶 模塊內(nèi)部的預處理模塊形成一個用戶請求通過發(fā)送模塊傳遞給業(yè)務調(diào)度系統(tǒng)內(nèi)部的監(jiān)控 器模塊。當系統(tǒng)處理完畢后將計算結(jié)果發(fā)送給用戶端的接收模塊,接收模塊再通過預處理 模塊將計算信息分類,并且分別返回給請求的用戶。在這部分里,預處理模塊起著重要作 用,它將零散的業(yè)務聚集匯成業(yè)務調(diào)度系統(tǒng)能夠識別的業(yè)務類型。
[0035]監(jiān)控器模塊負責監(jiān)控和傳遞用戶和計算節(jié)點云平臺的實時狀態(tài)信息。當監(jiān)控器模 塊開始監(jiān)控時,收集用戶的業(yè)務請求信息和云平臺內(nèi)部計算節(jié)點的負載信息,并將這些信 息通過內(nèi)部的預處理模塊存儲到數(shù)據(jù)庫中,數(shù)據(jù)庫利用鏈表來存儲業(yè)務信息和計算節(jié)點信 息。
[0036]當特定時間段內(nèi)結(jié)束時,將數(shù)據(jù)庫里存儲的用戶請求的業(yè)務信息和計算節(jié)點信息 發(fā)送給解析模塊進行解析,發(fā)送完畢后,將內(nèi)部的數(shù)據(jù)庫立即發(fā)送到回收模塊,清空數(shù)據(jù) 庫,準備接收下一個特定時間段內(nèi)的用戶請求業(yè)務信息和計算節(jié)點信息。
[0037] 解析模塊利用解向量表示為尋找的最優(yōu)業(yè)務調(diào)度策略。將業(yè)務調(diào)度問題解析為將 特定時間段內(nèi)收到的業(yè)務請求調(diào)度到云平臺數(shù)據(jù)服務器中由多個計算節(jié)點組成的最優(yōu)計 算節(jié)點集合中的問題。業(yè)務調(diào)度問題的解可以表示為一個N維解向量,每個元素代表處理用 戶業(yè)務請求的最優(yōu)計算節(jié)點的一個元組。若在相同的網(wǎng)絡帶寬下,數(shù)據(jù)服務器中有η臺可用 的計算節(jié)點,這些計算節(jié)點使用空間共享分配策略。云平臺數(shù)據(jù)服務器優(yōu)化每個特定時間 段。本發(fā)明定義了一個四元組Y={S,TK,U,L m}來描述,S表示為一組可用的計算節(jié)點集合,S (n,t) = {si,S2, . . .,sn},t表示調(diào)度開始時間。TK表示特定時間段內(nèi)用戶業(yè)務請求的集合, TK(m,At,t) = {tki,tk2, . . . . ,???ηι}。!^為集合S中η臺計算節(jié)點當前處理器剩余的集合,Lc (n,t) = {?Λ,?Λ,. . .,Ln。}。1^為集合S中η臺計算節(jié)點在時亥Ijt的存儲器剩余的集合,Lm(n,t) ={?Λ,?Λ,. . .,ΙΛ}。得到計算節(jié)點集合,同時也是找到的符合最優(yōu)業(yè)務調(diào)度策略,這個計 算節(jié)點集合能夠滿足當前所處理的業(yè)務集合的性能約束。
[0038] 估計模塊包括系統(tǒng)性能估計模塊和完成時間估計模塊。系統(tǒng)性能估計模塊評價和 計算本系統(tǒng)的性能指標,可以為本發(fā)明業(yè)務調(diào)度策略提供可靠數(shù)據(jù),從而提高了系統(tǒng)執(zhí)行 的精確度。而完成時間估計模塊為用戶和系統(tǒng)提供估計完成時間,也就是期望完成時間,在 這里用t e表示系統(tǒng)和用戶對業(yè)務的期望完成時間,確定系統(tǒng)期望的業(yè)務執(zhí)行完成時間te。當 確定期望完成時間后,估計模塊會將期望完成時間信息傳送給監(jiān)控器模塊,監(jiān)控器模塊會 以指令的形式發(fā)送給用戶端的接收模塊,然后用戶接收模塊會在短時間內(nèi)通過預處理模塊 告之當前請求業(yè)務的用戶。當?shù)谝粋€特定時間段內(nèi)的業(yè)務開始執(zhí)行到處理完畢,這個時間 段稱為實際執(zhí)行完成時間,系統(tǒng)生成一個實際執(zhí)行完成時間 tf,在理想狀態(tài)下用戶期望完 成時間與實際完成時間幾乎相等,但是,在實際的業(yè)務調(diào)度過程中會受到網(wǎng)絡、傳輸延遲、 計算節(jié)點負載等因素的制約,必然大于實際的執(zhí)行完成時間。用戶在請求業(yè)務之前會對業(yè) 務的執(zhí)行完成時間有一個期望值,而系統(tǒng)在實際的執(zhí)行過程中,業(yè)務的完成時間并不一定 等于用戶的期望值,為了描述用戶的對業(yè)務執(zhí)行完成時間的容忍程度,使系統(tǒng)更加精準、高 效的運行,需要使用函數(shù)作為評價依據(jù),即完成時間容忍度函數(shù)TD:
[0039] TD = l-(tf-te)/tf
[0040] 即當實際完成時間大于期望完成時間時,則容忍度會隨著業(yè)務實際執(zhí)行完成時間 的增加而逐漸減小。每個特定時間段內(nèi)的業(yè)務執(zhí)行完成后,根據(jù)容忍程度的變化做出相應 的調(diào)整。
[0041] 調(diào)度策略模塊內(nèi)部有一個接收數(shù)據(jù)的模塊。當估計模塊將數(shù)據(jù)信息傳遞到調(diào)度策 略模塊內(nèi)部的數(shù)據(jù)輸入模塊時,由于這些數(shù)據(jù)混合在一起而且雜亂無章。此時,就需要將這 些混合的數(shù)據(jù)進行解調(diào),得到計算節(jié)點的信息,以及特定時間段內(nèi)用戶請求的業(yè)務量。解調(diào) 完成后,分別對兩類數(shù)據(jù)進行操作,業(yè)務量模塊內(nèi)部計算出此時的請求業(yè)務的資源量,并以 此時的業(yè)務資源量作為約束值。然后,計算節(jié)點負載模塊內(nèi)部則根據(jù)計算節(jié)點的處理器剩 余和存儲器剩余計算出云平臺中每一臺計算節(jié)點的實時剩余資源量。根據(jù)當前的請求業(yè)務 量,將云平臺內(nèi)計算節(jié)點剩余資源量大于請求業(yè)務量的計算節(jié)點組成一個計算節(jié)點集合, 通過計算節(jié)點集合模塊與業(yè)務調(diào)度方法的交互,最終得到業(yè)務調(diào)度策略,然后將最優(yōu)調(diào)度 策略發(fā)送給調(diào)度控制模塊。
[0042]當業(yè)務調(diào)度方法內(nèi)部執(zhí)行完畢后,將其生成的調(diào)度策略發(fā)送給調(diào)度控制模塊,調(diào) 度控制模塊控制生成的調(diào)度策略以指令的形式通知云平臺,并將待處理的業(yè)務分派到各個 計算節(jié)點,以確保業(yè)務的順利執(zhí)行,并且同時保證算法的高效性、健壯性。調(diào)度控制模塊內(nèi) 部實現(xiàn)流程如下:當接收模塊接到來自調(diào)度策略模塊的數(shù)據(jù)后,將數(shù)據(jù)發(fā)送給內(nèi)部的數(shù)據(jù) 輸入模塊,輸入模塊向調(diào)度策略預處理模塊和云平臺計算節(jié)點模塊分別輸入兩個數(shù)據(jù),業(yè) 務調(diào)度方法調(diào)度策略和云平臺計算節(jié)點集合PH。預處理模塊根據(jù)輸入的業(yè)務調(diào)度方法策略 生成最終的最優(yōu)調(diào)度策略。這時,云平臺計算節(jié)點模塊將云平臺內(nèi)的計算節(jié)點組成集合PH, 然后將PH集合發(fā)送到最優(yōu)調(diào)度策略模塊,最優(yōu)調(diào)度策略模塊根據(jù)輸入的計算節(jié)點集合進行 挑選處理業(yè)務最優(yōu)的計算節(jié)點,并且組成一個最優(yōu)計算節(jié)點集合ST,ST集合中存放著云平 臺中計算節(jié)點的位置以及編號信息,需要將集合中的信息以指令的形式封裝起來,然后將 指令信息發(fā)送給云平臺計算節(jié)點模塊,至此,調(diào)度控制模塊內(nèi)部工作完成。
[0043]當計算節(jié)點云平臺模塊接收到來自系統(tǒng)內(nèi)部的調(diào)度控制模塊的指令信息后,將指 令信息傳遞給內(nèi)部的輸入模塊,輸入模塊將業(yè)務集合和調(diào)度指令分別發(fā)送到請求業(yè)務模塊 和解調(diào)指令模塊,然后解調(diào)指令模塊將收到的指令解調(diào),并傳送到調(diào)度模塊,與此同時,請 求業(yè)務模塊同樣將業(yè)務集合傳送給調(diào)度模塊。調(diào)度模塊根據(jù)計算節(jié)點指令信息,選擇相應 的計算節(jié)點。當計算節(jié)點選擇完成后,將業(yè)務集合中的業(yè)務快速的調(diào)度到相應的計算節(jié)點 上進行處理業(yè)務,業(yè)務完成后,將計算結(jié)果返回到系統(tǒng)中的接收模塊,然后接收模塊再將計 算結(jié)果發(fā)送給用戶,至此,云平臺計算節(jié)點模塊的內(nèi)部工作完成,并且開始進行下一個特定 時間段的業(yè)務調(diào)度。
[0044]本發(fā)明提出的業(yè)務調(diào)度方法將云平臺數(shù)據(jù)服務器收集到的業(yè)務請求調(diào)度到云平 臺的目標計算節(jié)點上,實現(xiàn)業(yè)務的高效調(diào)度。首先,根據(jù)評價計算節(jié)點性能的適應性函數(shù)、 當前計算節(jié)點的處理器剩余和存儲器剩余計算出當前全部計算節(jié)點的服務性能,依據(jù)當前 用戶請求業(yè)務量的大小對云平臺內(nèi)部的計算節(jié)點進行條件挑選,將計算節(jié)點剩余資源量大 于業(yè)務請求集合的總資源量的計算節(jié)點組成一個集合,該集合是對云平臺數(shù)據(jù)服務器的一 個整體性約束。然后將計算節(jié)點集合中k臺計算節(jié)點抽象成k個聚類點并且分別與云平臺中 全部計算節(jié)點進行聚類,將每臺計算節(jié)點的處理器剩余量和存儲器剩余量抽象為計算節(jié)點 的兩個屬性,根據(jù)計算節(jié)點的兩個屬性計算計算節(jié)點之間的近似度,然后由近似度給定一 個閾值,將計算節(jié)點之間的近似度在閾值內(nèi)的計算節(jié)點加入到一個新的集合。當集合中的 元素不再變化時,這個集合就是聚類的最后結(jié)果。最后,將待處理的業(yè)務調(diào)度至最終集合中 的計算節(jié)點。數(shù)據(jù)服務器中計算節(jié)點聚類的過程就是找到處理業(yè)務最優(yōu)計算節(jié)點的過程, 初始時云平臺數(shù)據(jù)服務器有η臺計算節(jié)點,當根據(jù)每臺計算節(jié)點的資源剩余和請求業(yè)務量 的大小進行第一次挑選,這時會得到一個集合,此時集合內(nèi)的計算節(jié)點數(shù)小于等于η,而第 二次挑選出的結(jié)果集合內(nèi)的計算節(jié)點的性能在一定程度上滿足了當前用戶的需求。
[0045] 步驟1:假設數(shù)據(jù)服務器有η臺計算節(jié)點組成一個集合Η,為了滿足聚類點的性能約 束,本發(fā)明對數(shù)據(jù)服務器中的全部計算節(jié)點進行一個約束條件限制,將計算節(jié)點的剩余資 源量U作為度量標準,U定義如下:
[0046] Li = aLc+PLm
[0047] 其中 α+β=1
[0048] U為處理器剩余;Lm為存儲器剩余;a為處理器權(quán)重;β為存儲器權(quán)重;a和β值的確定 采用BP神經(jīng)網(wǎng)絡學習獲取,根據(jù)計算節(jié)點性能的適應性函數(shù),獲取整個數(shù)據(jù)服務器中計算 節(jié)點的各項性能監(jiān)控數(shù)據(jù),包括處理器和存儲器數(shù)據(jù),可以計算出當前云平臺數(shù)據(jù)服務器 中η臺計算節(jié)點的剩余資源量。將約束值定義為:特定時間段內(nèi)接收到的業(yè)務請求集合的總 資源量,即:
[0050] 其中,LR表示為業(yè)務請求集合的總資源量,表示為業(yè)務請求集合中第i個業(yè)務 的資源量。定義一個空集S,計算出業(yè)務請求集合的總資源量LR,當Li>LR時,將i計算節(jié)點調(diào) 度至集合S中,否則繼續(xù)尋找,當η臺計算節(jié)點與約束值比較完成后得到的集合S,集合S = {si,S2,S3----,Sm},即為聚類點的集合,m<n。
[0051] 步驟2:根據(jù)計算節(jié)點性能的適應性函數(shù)得到每臺計算節(jié)點的性能值,通過和約束 值的限定,本發(fā)明將數(shù)據(jù)服務器中性能相對較好的計算節(jié)點調(diào)度至集合S中。將計算節(jié)點的 處理器剩余和存儲器剩余作為計算節(jié)點的兩個屬性。設S= { SI,S2,S3--,Sm}為m個計算節(jié) 點組成的集合,對集合S中的計算節(jié)點的處理器剩余進行降序排序,處理器剩余大的排列在 前,假設~為處理器剩余最大的計算節(jié)點,將~作為聚類點,則計算近似度的公式為:
[0053] s(si,sj) = l/d(si,sj)
[0054] 為計算節(jié)點j的第k個屬性,由此計算出計算節(jié)點j與計算節(jié)點i之間的近似度s (si,sj):
[0056] 步驟3:以~為聚類點,計算~與集合Η中各個元素之間的近似度值。根據(jù)近似度給 定一個閾值U,如果近似度大于閾值U,則將該元素加入新集合S'中。然后集合S按照計算節(jié) 點處理器剩余的降序依次選擇聚類點,分別計算與集合Η中元素的近似度,將閾值大于U的 元素調(diào)度至集合S'中,當集合S'中元素不再變化時,則迭代結(jié)束,集合S'為最終的聚類結(jié) 果,即S' = {si',S2 ' · · · Sq'},其中q<m<n。
[0057] 步驟4:將數(shù)據(jù)服務器接收的業(yè)務請求調(diào)度至集合S'中的計算節(jié)點,然后集合S'中 的計算節(jié)點處理請求的業(yè)務集合,處理完成后將結(jié)果返回給用戶。從集合S'中計算節(jié)點開 始處理業(yè)務到處理完成,將這段時間作為特定時間段,數(shù)據(jù)服務器在特定時間段內(nèi)接收的 業(yè)務請求數(shù)作為下一次待處理的業(yè)務。
[0058]步驟5:在下一時間段內(nèi)重復步驟1-4的上述過程。
[0059]綜上所述,本發(fā)明提出了一種云平臺的任務執(zhí)行方法,提高了云平臺數(shù)據(jù)服務器 的吞吐率,優(yōu)化了數(shù)據(jù)服務器對外服務性能,具有更好的調(diào)度平衡效果。
[0060]顯然,本領域的技術(shù)人員應該理解,上述的本發(fā)明的各模塊或各步驟可以用通用 的計算系統(tǒng)來實現(xiàn),它們可以集中在單個的計算系統(tǒng)上,或者分布在多個計算系統(tǒng)所組成 的網(wǎng)絡上,可選地,它們可以用計算系統(tǒng)可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲 在存儲系統(tǒng)中由計算系統(tǒng)來執(zhí)行。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
[0061]應當理解的是,本發(fā)明的上述【具體實施方式】僅僅用于示例性說明或解釋本發(fā)明的 原理,而不構(gòu)成對本發(fā)明的限制。因此,在不偏離本發(fā)明的精神和范圍的情況下所做的任何 修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。此外,本發(fā)明所附權(quán)利要求旨 在涵蓋落入所附權(quán)利要求范圍和邊界、或者這種范圍和邊界的等同形式內(nèi)的全部變化和修 改例。
【主權(quán)項】
1. 一種云平臺的任務執(zhí)行方法,用于將云平臺數(shù)據(jù)服務器收集到的業(yè)務請求調(diào)度到云 平臺的目標計算節(jié)點上,其特征在于: 將計算節(jié)點剩余資源量大于用戶業(yè)務請求集合總資源量的計算節(jié)點組成第一集合, 對云平臺中的計算節(jié)點進行聚類, 計算上述計算節(jié)點之間的近似度, 將近似度在闊值內(nèi)的計算節(jié)點加入第二集合, 將待處理的業(yè)務調(diào)度至第二集合中的計算節(jié)點。2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法進一步包括: 步驟1:將數(shù)據(jù)服務器的η臺計算節(jié)點組成一個集合H,對數(shù)據(jù)服務器中的全部計算節(jié)點 進行一個約束條件限制,將計算節(jié)點的剩余資源量以作為度量標準,Li定義如下: Iji 二 aLc+0Lm 其中α+β=1 Lc為處理器剩余;Lm為存儲器剩余;α為處理器權(quán)重;β為存儲器權(quán)重;α和β值的采用BP神 經(jīng)網(wǎng)絡學習確定,根據(jù)計算節(jié)點性能的適應性函數(shù),獲取整個數(shù)據(jù)服務器中計算節(jié)點的各 項性能監(jiān)控數(shù)據(jù),包括處理器和存儲器數(shù)據(jù),計算出當前云平臺數(shù)據(jù)服務器中η臺計算節(jié)點 的剩余資源量;將約束值定義為特定時間段內(nèi)接收到的業(yè)務請求集合的總資源量,即:其中,LR表示為業(yè)務請求集合的總資源量,王;t表示為業(yè)務請求集合中第i個業(yè)務的資 源量;定義一個空集S,計算出業(yè)務請求集合的總資源量LR,當Li〉L則寸,將i計算節(jié)點調(diào)度至 集合S中,否則繼續(xù)尋找,當η臺計算節(jié)點與約束值比較完成后得到的集合S,集合S={si,s2, S3 ,sm},即為聚類點的集合,m<n; 步驟2:根據(jù)計算節(jié)點性能的適應性函數(shù)得到每臺計算節(jié)點的性能值,通過和約束值的 限定,將計算節(jié)點的處理器剩余和存儲器剩余作為計算節(jié)點的兩個屬性;設S=kl,S2, S3. ...,Sm}為m個計算節(jié)點組成的集合,對集合S中的計算節(jié)點的處理器剩余進行降序排序, 假設Sj為處理器剩余最大的計算節(jié)點,將乍為聚類點,則計算近似度的公式為:s(si,sj) = l/d(si,sj) 為計算節(jié)點j的第k個屬性,由此計算出計算節(jié)點j與計算節(jié)點i之間的近似度S(S1, Sj):步驟3: Wsj為聚類點,計算Sj與集合Η中各個元素之間的近似度值;根據(jù)近似度給定一 個闊值U,如果近似度大于闊值U,則將該元素加入新集合S'中。然后集合對安照計算節(jié)點處 理器剩余的降序依次選擇聚類點,分別計算與集合Η中元素的近似度,將闊值大于U的元素 調(diào)度至集合S '中,當集合S '中元素不再變化時,則迭代結(jié)束,集合S '為最終的聚類結(jié)果,即 S' = {si',S2 '. . . Sq'},其中q<m<n; 步驟4:將數(shù)據(jù)服務器接收的業(yè)務請求調(diào)度至集合S '中的計算節(jié)點,然后集合S '中的計 算節(jié)點處理請求的業(yè)務集合,處理完成后將結(jié)果返回給用戶;數(shù)據(jù)服務器在從集合S'中計 算節(jié)點開始處理業(yè)務到處理完成的特定時間段內(nèi)接收的業(yè)務請求數(shù)作為下一次待處理的 業(yè)務; 步驟5:在下一時間段內(nèi)重復步驟1-4的過程。
【文檔編號】G06F9/48GK106095582SQ201610439452
【公開日】2016年11月9日
【申請日】2016年6月17日
【發(fā)明人】張敬華, 程映忠, 王松
【申請人】四川新環(huán)佳科技發(fā)展有限公司