本發(fā)明涉及任務(wù)調(diào)度,尤其涉及一種基于分布式計算的任務(wù)調(diào)度方法及系統(tǒng)。
背景技術(shù):
1、任務(wù)調(diào)度技術(shù)領(lǐng)域涉及計算機科學(xué)和軟件工程中的一系列方法和工具,旨在有效地管理和分配計算任務(wù)到多個處理單元。這個領(lǐng)域的核心問題是如何在多個計算節(jié)點之間分配任務(wù),以優(yōu)化資源利用率、減少計算時間和處理復(fù)雜依賴關(guān)系。任務(wù)調(diào)度策略可以是靜態(tài)的或動態(tài)的,依賴于任務(wù)的特性、系統(tǒng)的狀態(tài)和預(yù)定的優(yōu)先級。高效的任務(wù)調(diào)度能夠顯著提高分布式系統(tǒng)的性能,尤其是在大數(shù)據(jù)和云計算環(huán)境中。
2、其中,基于分布式計算的任務(wù)調(diào)度方法是指一種技術(shù)手段,用于在多個計算節(jié)點上自動分配和管理計算任務(wù)的過程。這種方法的目的是通過合理分配資源來最大化整個系統(tǒng)的工作效率,確保各個任務(wù)能夠在最短的時間內(nèi)完成,同時保持系統(tǒng)負載的平衡。這一方法廣泛應(yīng)用于云計算、大數(shù)據(jù)處理和高性能計算中,以應(yīng)對大規(guī)模的數(shù)據(jù)處理需求。
3、現(xiàn)有技術(shù)缺乏對任務(wù)特性細化分析,任務(wù)分配常依賴粗粒度的靜態(tài)策略,導(dǎo)致任務(wù)分布難以精準適配節(jié)點性能,資源利用率降低。缺少動態(tài)負載調(diào)整機制,節(jié)點間容易產(chǎn)生負載差異,影響整體計算效率。依賴關(guān)系管理中缺乏實時檢測與更新機制,任務(wù)在執(zhí)行中易因依賴未滿足而中斷,延長任務(wù)完成時間。缺乏任務(wù)完成時間和資源利用率的量化分析手段,難以準確評估系統(tǒng)性能,導(dǎo)致優(yōu)化依據(jù)不足。這些不足限制了現(xiàn)有技術(shù)在動態(tài)復(fù)雜場景下的適應(yīng)性,影響了分布式系統(tǒng)的穩(wěn)定性與效率,尤其在大規(guī)模計算場景中表現(xiàn)尤為明顯。
技術(shù)實現(xiàn)思路
1、本發(fā)明的目的是解決現(xiàn)有技術(shù)中存在的缺點,而提出的一種基于分布式計算的任務(wù)調(diào)度方法及系統(tǒng)。
2、為了實現(xiàn)上述目的,本發(fā)明采用了如下技術(shù)方案:一種基于分布式計算的任務(wù)調(diào)度方法,包括以下步驟:
3、s1:基于任務(wù)元數(shù)據(jù)集合,提取任務(wù)的計算密度值,統(tǒng)計數(shù)據(jù)輸入與輸出比值,檢測任務(wù)依賴數(shù)量,結(jié)合計算密度值與數(shù)據(jù)比值進行聯(lián)合計算,將結(jié)果與依賴數(shù)量比較分類,生成高低熵任務(wù)分類結(jié)果;
4、s2:基于所述高低熵任務(wù)分類結(jié)果,提取高熵任務(wù)的依賴數(shù)量和計算密度值,將計算密度值與節(jié)點性能參數(shù)進行逐項匹配,將高熵任務(wù)分配到符合計算能力的節(jié)點,將低熵任務(wù)分配到剩余節(jié)點,生成初始任務(wù)分配結(jié)果;
5、s3:基于所述初始任務(wù)分配結(jié)果,計算每個節(jié)點任務(wù)的總資源占用量,將資源占用量與節(jié)點可用資源容量進行比較,得到負載差異值,篩選負載差異值超過指定范圍的節(jié)點,將其部分任務(wù)與資源充裕節(jié)點進行容量匹配后調(diào)整任務(wù)分配,生成節(jié)點負載調(diào)整結(jié)果;
6、s4:基于所述節(jié)點負載調(diào)整結(jié)果,檢測遷移任務(wù)的依賴目標狀態(tài),標記未完成依賴的任務(wù)及其所在節(jié)點,確定依賴目標節(jié)點及未滿足任務(wù)的狀態(tài)信息,將未完成任務(wù)重新分配至對應(yīng)依賴目標所在節(jié)點,并更新任務(wù)狀態(tài),生成動態(tài)任務(wù)分配狀態(tài);
7、s5:基于所述動態(tài)任務(wù)分配狀態(tài),統(tǒng)計所有節(jié)點任務(wù)完成時間和資源利用率,將完成時間與資源利用率按照時間序列整合,記錄節(jié)點任務(wù)完成的時間序列數(shù)據(jù)及資源利用率序列,建立任務(wù)調(diào)度性能數(shù)據(jù)集。
8、所述高低熵任務(wù)分類結(jié)果包括高熵任務(wù)分類、低熵任務(wù)分類,所述初始任務(wù)分配結(jié)果包括高熵任務(wù)與節(jié)點的匹配結(jié)果、低熵任務(wù)與節(jié)點的分配結(jié)果,所述節(jié)點負載調(diào)整結(jié)果包括負載差異節(jié)點列表、任務(wù)遷移匹配結(jié)果、資源調(diào)整后的任務(wù)分配結(jié)果,所述動態(tài)任務(wù)分配狀態(tài)包括未完成依賴任務(wù)狀態(tài)、依賴目標節(jié)點狀態(tài)、重新分配任務(wù)狀態(tài),所述任務(wù)調(diào)度性能數(shù)據(jù)集包括節(jié)點任務(wù)完成的時間序列數(shù)據(jù)、資源利用率序列數(shù)據(jù)、性能統(tǒng)計數(shù)據(jù)。
9、作為本發(fā)明的進一步方案,所述高低熵任務(wù)分類結(jié)果的獲取步驟具體為:
10、s111:基于任務(wù)元數(shù)據(jù)集合,提取每個任務(wù)的計算密度值,通過采集任務(wù)的處理時間和計算資源占用率,處理時間與資源占用率的比值,生成計算密度值結(jié)果;
11、s112:調(diào)用所述計算密度值結(jié)果,分析任務(wù)的數(shù)據(jù)輸入與輸出量,通過統(tǒng)計輸入數(shù)據(jù)量與輸出數(shù)據(jù)量的總和,計算輸入與輸出比值,生成數(shù)據(jù)比值結(jié)果;
12、s113:基于所述計算密度值結(jié)果和所述數(shù)據(jù)比值結(jié)果,統(tǒng)計任務(wù)的依賴數(shù)量,通過歸納任務(wù)的關(guān)聯(lián)節(jié)點數(shù)量與層次深度,采用公式:
13、
14、計算任務(wù)分類指標,生成聯(lián)合分類結(jié)果;
15、其中,t為分類指標,di為數(shù)據(jù)比值,ci為計算密度值,d為依賴數(shù)量,|d表示依賴數(shù)量的絕對值,表示依賴數(shù)量的平方根,n代表任務(wù)總數(shù)量;
16、s114:利用所述聯(lián)合分類結(jié)果,通過比對分類指標值與高低熵分類閾值,依據(jù)比對結(jié)果對任務(wù)進行高低熵分類,生成高低熵任務(wù)分類結(jié)果。
17、作為本發(fā)明的進一步方案,所述初始任務(wù)分配結(jié)果的獲取步驟具體為:
18、s211:基于所述高低熵任務(wù)分類結(jié)果,篩選高熵任務(wù),記錄每個所述高熵任務(wù)的依賴數(shù)量與計算密度值,通過分析任務(wù)的資源使用和依賴性質(zhì),生成依賴與計算密度分析結(jié)果;
19、s212:從所述依賴與計算密度分析結(jié)果出發(fā),將計算密度值與節(jié)點性能參數(shù)匹配,為每個任務(wù)捕捉最匹配的節(jié)點,通過計算多任務(wù)的性能需求與節(jié)點能力的匹配度,生成匹配度結(jié)果;
20、s213:根據(jù)所述匹配度結(jié)果,優(yōu)化任務(wù)分配策略,將高熵任務(wù)優(yōu)先分配至對應(yīng)計算能力的節(jié)點,低熵任務(wù)則根據(jù)剩余資源進行分配,采用公式:
21、
22、計算每個節(jié)點的任務(wù)分配指標,生成初始任務(wù)分配結(jié)果;
23、其中,ai為節(jié)點i的任務(wù)分配指標,ci為任務(wù)的計算密度,pi為節(jié)點i的性能參數(shù),表示所有節(jié)點性能參數(shù)的和,∈以防除零錯誤,n代表節(jié)點的總數(shù)量,pk代表第k個節(jié)點的性能參數(shù)。
24、作為本發(fā)明的進一步方案,所述節(jié)點負載調(diào)整結(jié)果的獲取步驟具體為:
25、s311:基于所述初始任務(wù)分配結(jié)果,計算每個節(jié)點上所有任務(wù)的總資源占用量,通過累加每個節(jié)點上任務(wù)所需的gpu、cpu、內(nèi)存和存儲資源,生成每個節(jié)點的資源占用總量;
26、s312:將所述每個節(jié)點的資源占用總量與其總可用資源容量進行比較,計算每個節(jié)點的資源使用率,通過資源使用率與理想使用率之差,得到負載差異值;
27、s313:篩選所述負載差異值超過指定范圍的節(jié)點,與資源充裕節(jié)點進行任務(wù)和資源的匹配調(diào)整,采用公式:
28、
29、計算節(jié)點負載差異百分比,反映節(jié)點之間的資源分配不均衡狀態(tài),生成節(jié)點負載調(diào)整結(jié)果;
30、其中,δi為節(jié)點i的負載差異百分比,ui為節(jié)點i的實際資源使用率,u為目標資源使用率,∈是一個小常數(shù)以防除零錯誤,vi代表節(jié)點i上的任務(wù)數(shù)量。
31、作為本發(fā)明的進一步方案,所述動態(tài)任務(wù)分配狀態(tài)的獲取步驟具體為:
32、s411:基于所述節(jié)點負載調(diào)整結(jié)果,檢測遷移任務(wù)的依賴目標狀態(tài),通過分析每個遷移任務(wù)的依賴關(guān)系和目標節(jié)點的完成狀態(tài),生成任務(wù)依賴狀態(tài)分析結(jié)果;
33、s412:調(diào)用所述任務(wù)依賴狀態(tài)分析結(jié)果,標記所有未完成依賴的任務(wù)和所在節(jié)點,結(jié)合依賴目標節(jié)點和未滿足任務(wù)的狀態(tài)信息,通過依賴狀態(tài)的匹配邏輯,生成未完成任務(wù)狀態(tài)分析結(jié)果;
34、s413:利用所述未完成任務(wù)狀態(tài)分析結(jié)果,將未完成任務(wù)重新分配至對應(yīng)的依賴目標所在節(jié)點,采用公式:
35、
36、計算任務(wù)狀態(tài)更新指標,生成動態(tài)任務(wù)分配狀態(tài);
37、其中,si表示任務(wù)i的狀態(tài)更新指標,用于衡量重新分配后任務(wù)與目標節(jié)點的適配度,wj表示任務(wù)j的依賴權(quán)重,dij表示任務(wù)i與任務(wù)j的依賴強度,ci表示目標節(jié)點的可用資源量,用于評估分配任務(wù)的資源匹配情況,∈為規(guī)避除零錯誤的常數(shù)。
38、作為本發(fā)明的進一步方案,所述任務(wù)調(diào)度性能數(shù)據(jù)集的獲取步驟具體為:
39、s511:基于所述動態(tài)任務(wù)分配狀態(tài),統(tǒng)計每個節(jié)點的任務(wù)完成時間,通過記錄每個任務(wù)的開始和結(jié)束時間點,綜合參照多任務(wù)的并行性和序列性,生成每個節(jié)點任務(wù)的完成時間統(tǒng)計結(jié)果;
40、s512:同步調(diào)用所述每個節(jié)點任務(wù)的完成時間統(tǒng)計結(jié)果,統(tǒng)計每個節(jié)點的資源利用率,通過實時監(jiān)測多節(jié)點的gpu、cpu、內(nèi)存和存儲使用情況,采用加權(quán)平均法整合獲取每個節(jié)點的資源利用率時間序列數(shù)據(jù),生成資源利用率統(tǒng)計結(jié)果;
41、s513:整合所述每個節(jié)點任務(wù)的完成時間統(tǒng)計結(jié)果和所述資源利用率統(tǒng)計結(jié)果,將任務(wù)完成時間與資源利用率按時間序列整合,記錄節(jié)點任務(wù)完成的時間序列數(shù)據(jù)及資源利用率序列,采用公式:
42、
43、計算每個節(jié)點的任務(wù)調(diào)度性能指標,生成任務(wù)調(diào)度性能數(shù)據(jù)集;
44、其中,pi代表節(jié)點i的綜合性能指標,參照任務(wù)完成時間和預(yù)設(shè)標準的偏差,以及任務(wù)的權(quán)重,wj是任務(wù)j的權(quán)重,表示任務(wù)的關(guān)鍵性或緊急程度,tij是任務(wù)j在節(jié)點i上的實際完成時間,tj是任務(wù)j的預(yù)定完成時間,提供一個基準對比實際執(zhí)行時間,∈是為了規(guī)避除零錯誤引入的小量,m代表節(jié)點i上的任務(wù)總數(shù),用于確定性能指標計算中的任務(wù)的范圍。
45、一種基于分布式計算的任務(wù)調(diào)度系統(tǒng),所述基于分布式計算的任務(wù)調(diào)度系統(tǒng)用于執(zhí)行上述基于分布式計算的任務(wù)調(diào)度方法,所述系統(tǒng)包括:
46、任務(wù)分類模塊基于任務(wù)元數(shù)據(jù)集合,提取任務(wù)的計算密度值,統(tǒng)計數(shù)據(jù)輸入輸出比值,聯(lián)合運算計算密度值與比值,將運算結(jié)果與任務(wù)依賴數(shù)量比較,分類生成高低熵任務(wù)分類結(jié)果;
47、節(jié)點匹配模塊基于所述高低熵任務(wù)分類結(jié)果,提取高熵任務(wù)的依賴數(shù)量與計算密度值,匹配高熵任務(wù)的計算密度值與節(jié)點性能參數(shù),分配高熵任務(wù)至對應(yīng)節(jié)點,低熵任務(wù)分配至剩余節(jié)點,生成初始任務(wù)分配結(jié)果;
48、負載平衡模塊基于所述初始任務(wù)分配結(jié)果,統(tǒng)計多節(jié)點任務(wù)總資源占用量,比對總資源占用量與節(jié)點可用資源容量,計算負載差異值,篩選差異值超范圍節(jié)點,將超范圍節(jié)點任務(wù)與資源充裕節(jié)點比對調(diào)整分配,生成節(jié)點負載調(diào)整結(jié)果;
49、依賴調(diào)整模塊基于所述節(jié)點負載調(diào)整結(jié)果,提取遷移任務(wù)依賴目標狀態(tài),標記未完成依賴任務(wù)及所在節(jié)點,提取依賴目標節(jié)點與任務(wù)狀態(tài),重新分配未完成任務(wù)至依賴目標所在節(jié)點,建立動態(tài)任務(wù)分配狀態(tài)。
50、與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點和積極效果在于:
51、本發(fā)明中,通過計算密度值與數(shù)據(jù)比值的聯(lián)合計算,細化任務(wù)分類,提升分配精確性,避免資源錯配。結(jié)合任務(wù)依賴與節(jié)點性能的匹配分配優(yōu)化資源利用率,防止性能瓶頸。動態(tài)調(diào)整負載分配,平衡節(jié)點資源占用,減少過載和閑置現(xiàn)象。實時檢測依賴狀態(tài)并重新分配未完成任務(wù),避免因依賴沖突導(dǎo)致任務(wù)延遲。整合任務(wù)完成時間和資源利用率的時間序列數(shù)據(jù),為優(yōu)化提供量化依據(jù),提升分布式系統(tǒng)效率和適應(yīng)能力。