云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法
【專(zhuān)利摘要】本發(fā)明涉及大數(shù)據(jù)計(jì)算,公開(kāi)了一種云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法,大致地包括對(duì)現(xiàn)有的工作流進(jìn)行重構(gòu)得到新的工作流的重構(gòu)步驟,應(yīng)用遺傳算法對(duì)工作流進(jìn)行優(yōu)化的優(yōu)化步驟以及通過(guò)歷史數(shù)據(jù)記錄或者在建立相應(yīng)的回歸模型后記錄回歸模型的相關(guān)數(shù)據(jù)的方式保留上述歷史數(shù)據(jù)的歷史數(shù)據(jù)取得步驟,從而在優(yōu)化步驟中,可以通過(guò)部分的歷史數(shù)據(jù)生成不同的個(gè)體。本發(fā)明的優(yōu)點(diǎn)在于,不僅考慮到了工作流作業(yè)的運(yùn)行時(shí)間,同時(shí)考慮在云平臺(tái)上計(jì)算過(guò)程中集群租用所需要的花費(fèi),優(yōu)化效果好,可以確實(shí)地解決大型云計(jì)算平臺(tái)上工作流調(diào)度過(guò)程中效率不高的問(wèn)題。
【專(zhuān)利說(shuō)明】云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及大數(shù)據(jù)計(jì)算領(lǐng)域,特別涉及一種云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法,有效地提高了云平臺(tái)上的工作流調(diào)度的優(yōu)化效率。
【背景技術(shù)】
[0002]隨著以物聯(lián)網(wǎng)、社交網(wǎng)站SNS、生物信息學(xué)為代表的新型信息發(fā)布方式的產(chǎn)生和發(fā)展,人類(lèi)社會(huì)的數(shù)據(jù)種類(lèi)和數(shù)量正在以爆炸式的速度增長(zhǎng),大數(shù)據(jù)時(shí)代已經(jīng)到來(lái)。目前,對(duì)于大數(shù)據(jù)尚未有一個(gè)公認(rèn)的定義,它與傳統(tǒng)的“海量數(shù)據(jù)”、“超大規(guī)模數(shù)據(jù)”等概念的區(qū)別,主要體現(xiàn)在大數(shù)據(jù)需要具備以下三個(gè)特點(diǎn):規(guī)模性(volume)、多樣性(variety)和高速性(velocity)。據(jù)統(tǒng)計(jì),紐約證券交易所每天產(chǎn)生約ITB的交易數(shù)據(jù),百度公司每天要處理的數(shù)據(jù)達(dá)到10?100PB。大數(shù)據(jù)計(jì)算可以分為單作業(yè)單步計(jì)算、單作業(yè)迭代計(jì)算和多作業(yè)工作流計(jì)算等,每個(gè)作業(yè)可以由多個(gè)任務(wù)并行計(jì)算來(lái)加快運(yùn)行的速度,即每個(gè)作業(yè)可以由若干數(shù)據(jù)并行的任務(wù)構(gòu)成。
[0003]“云計(jì)算”為大數(shù)據(jù)提供了計(jì)算平臺(tái),它指通過(guò)互聯(lián)網(wǎng)向用戶提供的服務(wù),包括基礎(chǔ)設(shè)施即服務(wù)(Infrastructure as a Service)、平臺(tái)即服務(wù)(Platform as a Service)和軟件即服務(wù)(Software as a Service)?!霸朴?jì)算”通過(guò)網(wǎng)絡(luò),以付費(fèi)即用(Pay-as-you-go)的方式,為全世界的用戶提供基于效用的信息服務(wù)。
[0004]按處理模式的不同分,處理大數(shù)據(jù)的框架可以分為流處理(streamprocessing)框架和批處理(batch processing)框架。批處理是先把數(shù)據(jù)存儲(chǔ)后再處理(store-then-process),而流處理則是在數(shù)據(jù)產(chǎn)生后直接處理(straight throughprocessing),在流處理中,數(shù)據(jù)的價(jià)值會(huì)隨著時(shí)間的流逝驟減。大數(shù)據(jù)工作流可以由批處理作業(yè)或者流處理作業(yè)構(gòu)成,現(xiàn)有的大數(shù)據(jù)處理優(yōu)化方法只針對(duì)單一作業(yè),并沒(méi)有考慮在云平臺(tái)運(yùn)行時(shí)的集群租用費(fèi)用。
[0005]鑒于上述問(wèn)題,在本發(fā)明中,我們擬針對(duì)云平臺(tái)上大數(shù)據(jù)批處理工作流的性能和費(fèi)用進(jìn)行優(yōu)化,以期能夠研發(fā)一種可以更為有效地在調(diào)度過(guò)程中維持原有條件下的優(yōu)化效率的新型調(diào)度優(yōu)化方法。
【發(fā)明內(nèi)容】
[0006]本發(fā)明針對(duì)現(xiàn)有技術(shù)中,優(yōu)化方法依賴(lài)于初始條件,其優(yōu)化效果會(huì)隨時(shí)間而變化甚至減弱的缺點(diǎn),提供了一種云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法,可以提供更為穩(wěn)定的優(yōu)化效果,有效地提高了工作流調(diào)度的優(yōu)化效率。
[0007]為實(shí)現(xiàn)上述目的,本發(fā)明可采取下述技術(shù)方案:
[0008]—種云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法,包括以下具體步驟:
[0009]重構(gòu)步驟:將用戶提交的至少包括一個(gè)作業(yè)的工作流W重構(gòu)為一個(gè)新的工作流G,所述重構(gòu)包括:
[0010]工作流中的新作業(yè)節(jié)點(diǎn)組成集合V,以新作業(yè)為節(jié)點(diǎn)的有向無(wú)環(huán)圖的節(jié)點(diǎn)之間的有向邊組成集合E,所述新作業(yè)包括開(kāi)始作業(yè)JEntay、同步作業(yè)Jsyn、結(jié)束作業(yè)JExit以及分支作業(yè)JB.,所述開(kāi)始作業(yè)JEnt”是指工作流W中沒(méi)有任何父節(jié)點(diǎn)的作業(yè),所述結(jié)束作業(yè)JExit是指工作流W中沒(méi)有任何子節(jié)點(diǎn)的作業(yè),所述同步作業(yè)Jsyn同時(shí)擁有父節(jié)點(diǎn)和子節(jié)點(diǎn),并且具備父節(jié)點(diǎn)數(shù)量大于等于兩個(gè)或者子節(jié)點(diǎn)數(shù)量大于等于兩個(gè)的性質(zhì),所述分支作業(yè)JBran是指相互依賴(lài)的簡(jiǎn)單作業(yè)Jsim的集合,所述相互依賴(lài)是指不同的簡(jiǎn)單作業(yè)Jsim的有向邊能夠連通分支作業(yè)內(nèi)所有的簡(jiǎn)單作業(yè),所述簡(jiǎn)單作業(yè)Jsim是指工作流W中只有一個(gè)父節(jié)點(diǎn)和一個(gè)子節(jié)點(diǎn)的作業(yè);
[0011]計(jì)算工作流G中所有作業(yè)的輸入數(shù)據(jù)集的大小,并將所述輸入數(shù)據(jù)集的大小組成向量S ;
[0012]優(yōu)化步驟:產(chǎn)生初始種群,所述初始種群是指通過(guò)對(duì)工作流G中的作業(yè)賦隨機(jī)初值得到的個(gè)體的集合;通過(guò)產(chǎn)生新的個(gè)體的方式擴(kuò)大初始種群內(nèi)個(gè)體的數(shù)量得到下一代種群,所述新的個(gè)體是指由隨機(jī)點(diǎn)交叉和/或隨機(jī)點(diǎn)變異的方式所產(chǎn)生的新的個(gè)體;分別計(jì)算所述下一代種群中所有個(gè)體的工作時(shí)間,選取所述下一代種群中的至少一個(gè)個(gè)體作為優(yōu)化結(jié)果輸出。
[0013]于本發(fā)明的實(shí)施例中,還包括歷史數(shù)據(jù)取得步驟;
[0014]所述歷史數(shù)據(jù)取得步驟包括:任意選擇一個(gè)用戶提交的工作流W ;以不同的作業(yè)配置參數(shù)以及集群虛擬機(jī)節(jié)點(diǎn)數(shù)目分別運(yùn)行所述工作流W中的作業(yè);將所述工作流W中的作業(yè)的運(yùn)行結(jié)果進(jìn)行保存。
[0015]于本發(fā)明的實(shí)施例中,所述歷史數(shù)據(jù)取得步驟還包括:對(duì)運(yùn)行于不同的作業(yè)配置參數(shù)以及集群虛擬機(jī)節(jié)點(diǎn)數(shù)目下的所述工作流W中的作業(yè)的運(yùn)行結(jié)果進(jìn)行擬合,得到擬合后曲線的參數(shù)。
[0016]于本發(fā)明的實(shí)施例中,所述作業(yè)配置參數(shù)包括Mapper數(shù)量NM、Reducer數(shù)量Nk、輸入數(shù)據(jù)的大小Slnput以及集群虛擬機(jī)節(jié)點(diǎn)的數(shù)目Naustw,所述輸入數(shù)據(jù)以分塊的形式進(jìn)行存儲(chǔ),所述Nm、Ne或Nausto不大于Νβ1。。,,所述Νβ1。。,是指所述輸入數(shù)據(jù)的分塊數(shù)目。
[0017]于本發(fā)明的實(shí)施例中,所述輸入數(shù)據(jù)以64ΜΒ每塊的大小進(jìn)行分塊。
[0018]于本發(fā)明的實(shí)施例中,所述初始種群或者下一代種群的染色體為{NM1,Nki,Naustwl,Ν?2,Ne2, Ncluster2,...,NM(k+1), NE(k+1), Ncluster(k+1)} ο
[0019]于本發(fā)明的實(shí)施例中,所述染色體中每個(gè)元素包含兩位數(shù)字。
[0020]本發(fā)明具有以下的顯著技術(shù)效果:
[0021]優(yōu)化效果好,穩(wěn)定性高,通過(guò)任務(wù)的輪廓分析方法,在不同配置信息和虛擬集群規(guī)模的情況運(yùn)行同一個(gè)任務(wù),得到運(yùn)行時(shí)間。使用最小二乘法進(jìn)行多元線性回歸,使用模型預(yù)測(cè)在新的配置參數(shù)下的運(yùn)行時(shí)間。隨著運(yùn)行的進(jìn)行,歷史數(shù)據(jù)的不斷積累,可以有效地保證調(diào)度方法可以隨不同的工作流進(jìn)行調(diào)整,從而降低工作流的變化對(duì)于優(yōu)化效率的影響,通過(guò)這種方法達(dá)到提高整體優(yōu)化效率的目的。
[0022]通過(guò)改進(jìn)的遺傳算法來(lái)得到每個(gè)任務(wù)配置信息的近似最優(yōu)解,收斂速度快,計(jì)算速度快,本發(fā)明不僅考慮工作流作業(yè)的運(yùn)行時(shí)間,還能夠考慮在云計(jì)算時(shí)代基礎(chǔ)設(shè)施的租用花費(fèi)。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0023]圖1為云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法的流程示意圖。
【具體實(shí)施方式】
[0024]下面結(jié)合實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)描述。
[0025]實(shí)施例1
[0026]—種云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法,如圖1所示,包括以下具體步驟:
[0027]重構(gòu)步驟100:本步驟的核心在于將用戶提交的工作流W進(jìn)行重構(gòu),從而生成一個(gè)具有全新結(jié)構(gòu),可以更好地適應(yīng)遺傳優(yōu)化算法的新的工作流,具體而言,將用戶提交的至少包括一個(gè)作業(yè)的工作流W重構(gòu)為一個(gè)新的工作流G,作為一種可選的方案,工作流W可以表示為W(r,A,s,d),Γ為任務(wù)集,表示工作流W中所有作業(yè)的集合,此處,將一個(gè)作業(yè)作為一個(gè)任務(wù),并視為該工作流W的有向無(wú)環(huán)圖的節(jié)點(diǎn),A為有向變的集合,表示有向無(wú)環(huán)圖中任意的兩個(gè)節(jié)點(diǎn)之間的連接,s表示工作流W的初始輸入數(shù)據(jù)集的大小,d表示工作流W的運(yùn)行截止時(shí)間,即工作流W運(yùn)行的結(jié)束時(shí)間。其中,所述重構(gòu)包括以下具體步驟:
[0028]工作流中的新作業(yè)節(jié)點(diǎn)組成集合V,以新作業(yè)為節(jié)點(diǎn)的有向無(wú)環(huán)圖的節(jié)點(diǎn)之間的有向邊組成集合E,所述新作業(yè)包括開(kāi)始作業(yè)JEntay、同步作業(yè)Jsyn、結(jié)束作業(yè)JExit以及分支作業(yè)JB.,所述開(kāi)始作業(yè)JEnt”是指工作流W中沒(méi)有任何父節(jié)點(diǎn)的作業(yè),所述結(jié)束作業(yè)JExit是指工作流W中沒(méi)有任何子節(jié)點(diǎn)的作業(yè),所述同步作業(yè)Jsyn同時(shí)擁有父節(jié)點(diǎn)和子節(jié)點(diǎn),并且具備父節(jié)點(diǎn)數(shù)量大于等于兩個(gè)或者子節(jié)點(diǎn)數(shù)量大于等于兩個(gè)的性質(zhì),所述分支作業(yè)JBran是指相互依賴(lài)的簡(jiǎn)單作業(yè)Jsim的集合,所述相互依賴(lài)是指不同的簡(jiǎn)單作業(yè)Jsim的有向邊能夠連通分支作業(yè)內(nèi)所有的簡(jiǎn)單作業(yè),所述簡(jiǎn)單作業(yè)Jsim是指工作流W中只有一個(gè)父節(jié)點(diǎn)和一節(jié)子節(jié)點(diǎn)的作業(yè);
[0029]計(jì)算工作流G中所有作業(yè)的輸入數(shù)據(jù)集的大小,并將所述輸入數(shù)據(jù)集的大小組成向量S ;上述重構(gòu)由工作流調(diào)度器完成,該工作流調(diào)度器還包括計(jì)算近似最優(yōu)解調(diào)度,并使用該近似最優(yōu)解調(diào)度相對(duì)應(yīng)的參數(shù)調(diào)度到云平臺(tái)上運(yùn)行。
[0030]上述重構(gòu)后的工作流G可以表示為G( Γ,Λ,V,E,S,d),為了減少作業(yè)之間數(shù)據(jù)傳輸產(chǎn)生的費(fèi)用,在工作流G中,同一分支作業(yè)所包含的作業(yè)使用相同的虛擬機(jī)集群進(jìn)行運(yùn)行。
[0031 ] 優(yōu)化步驟200:產(chǎn)生初始種群,所述初始種群是指通過(guò)對(duì)工作流G中的作業(yè)賦隨機(jī)初值得到的個(gè)體的集合;通過(guò)產(chǎn)生新的個(gè)體的方式擴(kuò)大初始種群內(nèi)個(gè)體的數(shù)量得到下一代種群,所述新的個(gè)體是指由隨機(jī)點(diǎn)交叉和/或隨機(jī)點(diǎn)變異的方式所產(chǎn)生的新的個(gè)體;分別計(jì)算所述下一代種群中所有個(gè)體的工作時(shí)間,選取所述下一代種群中的至少一個(gè)個(gè)體作為優(yōu)化結(jié)果輸出。此外,作為另一種可選擇的方案,所述的優(yōu)化結(jié)果也可以通過(guò)以下方式得到:計(jì)算最后生成的下一代種群的每個(gè)個(gè)體所對(duì)應(yīng)調(diào)度策略的工作流運(yùn)行所需要的租用費(fèi)用,選取下一代種群中集群租用費(fèi)用最小的個(gè)體作為最后的調(diào)度策略。
[0032]作為一個(gè)可選的方案,通常地,設(shè)定初始種群的數(shù)目為n,則通過(guò)隨機(jī)點(diǎn)交叉和/或隨機(jī)點(diǎn)變異的方式產(chǎn)生的下一代種群的數(shù)目為2n。其中,
[0033]隨機(jī)點(diǎn)交叉是指采用以下的方式所生成的新的個(gè)體,這里所述的方式包括,在個(gè)體的染色體上設(shè)定至少一個(gè)的交叉點(diǎn),該交叉點(diǎn)通常是隨機(jī)設(shè)定的,然后依次將交叉點(diǎn)兩側(cè)的部分進(jìn)行互換,生成一個(gè)新的染色體。
[0034]隨機(jī)點(diǎn)變異是指在染色體以二進(jìn)制編碼的系統(tǒng)中,它隨機(jī)地將染色體的某一個(gè)基因由I變成0,或由O變成I。通過(guò)變異操作,可確保群體中遺傳基因類(lèi)型的多樣性,以使搜索能在盡可能大的空間中進(jìn)行,避免丟失在搜索中有用的遺傳信息而陷入局部解,獲得質(zhì)量較高的優(yōu)化解答。
[0035]進(jìn)一步地,作為一種生成下一代種群的個(gè)體選擇方法,該方法包括:在下一代種群的數(shù)目為2η時(shí),計(jì)算該下一代種群中每一個(gè)個(gè)體所對(duì)應(yīng)的調(diào)度策略的加權(quán)有向無(wú)環(huán)圖的關(guān)鍵路徑作為工作流運(yùn)行時(shí)間,選取運(yùn)行時(shí)間最小的η個(gè)體成為下一代種群所包含的個(gè)體,并更新下一代種群,該處所記載的運(yùn)行時(shí)間ExecTime可以使用下述的回歸模型計(jì)算得到。此外,作為另外一種較為簡(jiǎn)化的生成下一代種群的個(gè)體選擇方法,可以簡(jiǎn)單地通過(guò)計(jì)算每個(gè)個(gè)體對(duì)應(yīng)的調(diào)度算法所需的運(yùn)行時(shí)間ExecTime,選取ExecTime最小的若干個(gè)體作為下一代種群的個(gè)體。
[0036]進(jìn)一步地,作為一種優(yōu)化方案,所述優(yōu)化步驟200還包括具有設(shè)定次數(shù)的迭代步驟400,所述迭代步驟400包括:
[0037]生成下一代種群后,計(jì)算該下一代種群中每個(gè)個(gè)體所對(duì)應(yīng)的調(diào)度算法所需的運(yùn)行時(shí)間ExecTime,保留ExecTime的數(shù)值較小的若干個(gè),優(yōu)選為η個(gè)個(gè)體;以該下一代種群中的η個(gè)個(gè)體作為新的初始種群的個(gè)體以完成一次迭代過(guò)程。
[0038]通常而言,上述迭代過(guò)程需要重復(fù)6-10次,以便于優(yōu)化工作流G的運(yùn)行。
[0039]進(jìn)一步地,為了能夠更為準(zhǔn)確地模擬最優(yōu)的工作流調(diào)度,所述方法還包括歷史數(shù)據(jù)取得步驟300 ;
[0040]所述歷史數(shù)據(jù)取得步驟300包括:任意選擇一個(gè)用戶提交的工作流W ;以不同的作業(yè)配置參數(shù)以及集群虛擬機(jī)節(jié)點(diǎn)數(shù)目分別運(yùn)行所述工作流W中的作業(yè);將所述工作流W中的作業(yè)的運(yùn)行結(jié)果進(jìn)行保存。
[0041]進(jìn)一步地,對(duì)運(yùn)行于不同的作業(yè)配置參數(shù)以及集群虛擬機(jī)節(jié)點(diǎn)數(shù)目下的所述工作流W中的作業(yè)的運(yùn)行結(jié)果進(jìn)行擬合,得到擬合后曲線的參數(shù)。進(jìn)一步地,為了能夠更為準(zhǔn)確地反映工作流,所述作業(yè)配置參數(shù)還包括所述工作流W的輸入數(shù)據(jù)集與輸出數(shù)據(jù)集的大小比值1Rate,同樣地作為運(yùn)行結(jié)果進(jìn)行保存。
[0042]所述作業(yè)配置參數(shù)包括Mapper數(shù)量NM、Reducer數(shù)量Nk、輸入數(shù)據(jù)的大小Slnput以及集群虛擬機(jī)節(jié)點(diǎn)的數(shù)目Naust?,所述輸入數(shù)據(jù)以分塊的形式進(jìn)行存儲(chǔ),所述Nm、Nk或Nauste不大于Νβ1。。,,所述Νβ1。。,是指所述輸入數(shù)據(jù)的分塊數(shù)目。該作業(yè)配置參數(shù)是與特定的作業(yè)J相關(guān)聯(lián)的。
[0043]作為一種可選的方案,上述擬合過(guò)程需要使用多元線性回歸模型,優(yōu)選地,可以采用以下的回歸模型 ExecTime = a X NM+b X NE+c X Ncluster+d X SInput+e,其中,ExecTime 即所述工作流W中某個(gè)作業(yè)的運(yùn)行時(shí)間。擬合過(guò)程中,在積累了足夠多的歷史數(shù)據(jù)后,可以計(jì)算得到上述回歸模型中各個(gè)參數(shù)的取值或者取值范圍;設(shè)定所述工作流W中輸出數(shù)據(jù)集的大小與輸入數(shù)據(jù)集的大小是成正比例關(guān)系的,由上述回歸模型可以得到輸出數(shù)據(jù)的大小
Saitput,令
【權(quán)利要求】
1.一種云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法,其特征在于,包括以下具體步驟: 重構(gòu)步驟(100):將用戶提交的至少包括一個(gè)作業(yè)的工作流W重構(gòu)為一個(gè)新的工作流G,所述重構(gòu)包括: 工作流中的新作業(yè)節(jié)點(diǎn)組成集合V,以新作業(yè)為節(jié)點(diǎn)的有向無(wú)環(huán)圖的節(jié)點(diǎn)之間的有向邊組成集合E,所述新作業(yè)包括開(kāi)始作業(yè)JEntay、同步作業(yè)Jsyn、結(jié)束作業(yè)JExit以及分支作業(yè)JBMn,所述開(kāi)始作業(yè)JEnt”是指工作流W中沒(méi)有任何父節(jié)點(diǎn)的作業(yè),所述結(jié)束作業(yè)JExit是指工作流W中沒(méi)有任何子節(jié)點(diǎn)的作業(yè),所述同步作業(yè)Jsyn同時(shí)擁有父節(jié)點(diǎn)和子節(jié)點(diǎn),并且具備父節(jié)點(diǎn)數(shù)量大于等于兩個(gè)或者子節(jié)點(diǎn)數(shù)量大于等于兩個(gè)的性質(zhì),所述分支作業(yè)JBran是指相互依賴(lài)的簡(jiǎn)單作業(yè)Jsim的集合,所述相互依賴(lài)是指不同的簡(jiǎn)單作業(yè)Jsim之間的有向邊能夠連通分支作業(yè)內(nèi)所有的簡(jiǎn)單 作業(yè),所述簡(jiǎn)單作業(yè)Jsim是指工作流W中只有一個(gè)父節(jié)點(diǎn)和一個(gè)子節(jié)點(diǎn)的作業(yè); 計(jì)算工作流G中所有作業(yè)的輸入數(shù)據(jù)集的大小,并將所述輸入數(shù)據(jù)集的大小組成向量S ; 優(yōu)化步驟(200):產(chǎn)生初始種群,所述初始種群是指通過(guò)對(duì)工作流G中的作業(yè)賦隨機(jī)初值得到的個(gè)體的集合;通過(guò)產(chǎn)生新的個(gè)體的方式擴(kuò)大初始種群內(nèi)個(gè)體的數(shù)量得到下一代種群,所述新的個(gè)體是指由隨機(jī)點(diǎn)交叉和/或隨機(jī)點(diǎn)變異的方式所產(chǎn)生的新的個(gè)體;分別計(jì)算所述下一代種群中所有個(gè)體的工作時(shí)間,選取所述下一代種群中的至少一個(gè)個(gè)體作為優(yōu)化結(jié)果輸出。
2.根據(jù)權(quán)利要求1所述的云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法,其特征在于,還包括歷史數(shù)據(jù)取得步驟(300); 所述歷史數(shù)據(jù)取得步驟(300)包括:任意選擇一個(gè)用戶提交的工作流W ; 以不同的作業(yè)配置參數(shù)以及集群虛擬機(jī)節(jié)點(diǎn)數(shù)目分別運(yùn)行所述工作流W中的作業(yè);將所述工作流W中的作業(yè)的運(yùn)行結(jié)果進(jìn)行保存。
3.根據(jù)權(quán)利要求2所述的云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法,其特征在于,所述歷史數(shù)據(jù)取得步驟(300)還包括:對(duì)運(yùn)行于不同的作業(yè)配置參數(shù)以及集群虛擬機(jī)節(jié)點(diǎn)數(shù)目下的所述工作流W中的作業(yè)的運(yùn)行結(jié)果進(jìn)行擬合,得到擬合后曲線的參數(shù)。
4.根據(jù)權(quán)利要求2所述的云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法,其特征在于,所述作業(yè)配置參數(shù)包括Mapper數(shù)量NM、Reducer數(shù)量Nk、輸入數(shù)據(jù)的大小Slnput以及集群虛擬機(jī)節(jié)點(diǎn)的數(shù)目Naust?,所述輸入數(shù)據(jù)以分塊的形式進(jìn)行存儲(chǔ),所述Nm、Nk或Nauste不大于Νβ1。。,,所述Νβ1。。,是指所述輸入數(shù)據(jù)的分塊數(shù)目。
5.根據(jù)權(quán)利要求4所述的云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法,其特征在于,所述輸入數(shù)據(jù)以64ΜΒ每塊的大小進(jìn)行分塊。
6.根據(jù)權(quán)利要求1所述的云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法,其特征在于,所述初始種群或者下一代種群的染色體為
7.根據(jù)權(quán)利要求6所述的云平臺(tái)MapReduce工作流調(diào)度優(yōu)化方法,其特征在于,所述染色體中每個(gè)元素包含兩位數(shù)字。
【文檔編號(hào)】G06F17/30GK104199820SQ201410315763
【公開(kāi)日】2014年12月10日 申請(qǐng)日期:2014年7月3日 優(yōu)先權(quán)日:2014年7月3日
【發(fā)明者】吳朝暉, 何延彰, 姜曉紅, 陳英芝, 毛宇 申請(qǐng)人:浙江大學(xué)