本公開涉及任務管理,尤其涉及一種結合輸入數(shù)據(jù)量的spark離線任務資源調(diào)度優(yōu)化方法、系統(tǒng)和電子設備。
背景技術:
1、spark離線任務在運行過程中,若單個任務的計算資源(driver-memory、driver-cores、num-executors、executor-memory、executor-cores)沒有特別指定,那么driver的資源將按照默認配置設定,executor的資源將按照實際輸入的數(shù)據(jù)量、文件個數(shù)動態(tài)指定。
2、但在實際應用場景中,會有如下幾類情形:
3、計算量大的任務必然會占用過多的計算資源,但是這些任務的執(zhí)行時效可能不著急,因此可以對這類任務設置更小的計算資源;
4、面向業(yè)務或高級管理的數(shù)據(jù)任務是優(yōu)先級比較高的任務,期望更快完成,因此需要拿到更多的計算資源來保證計算時長不會很長。
5、而對于單個客戶而言,客戶期望業(yè)務數(shù)據(jù)特點是穩(wěn)定的。因此對于不同數(shù)據(jù)規(guī)模的spark任務,可以按照數(shù)據(jù)量設置一個相對的標準,在實際計算的過程中能夠根據(jù)spark任務輸入數(shù)據(jù)表的數(shù)據(jù)量,動態(tài)按照預設規(guī)則進行資源參數(shù)配置。
6、但現(xiàn)有spark離線任務資源調(diào)度環(huán)節(jié),并無上述離線任務下的動態(tài)資源調(diào)度配置方案,因此無法有效滿足客戶需求,導致spark離線任務資源調(diào)度低效,任務運行、執(zhí)行完成率不高。
技術實現(xiàn)思路
1、為了解決上述問題,本技術提出一種結合輸入數(shù)據(jù)量的spark離線任務資源調(diào)度優(yōu)化方法、系統(tǒng)和電子設備。
2、本技術一方面,提出一種結合輸入數(shù)據(jù)量的spark離線任務資源調(diào)度優(yōu)化方法,包括如下步驟:
3、s1、預設構建由不同行數(shù)與對應計算資源規(guī)則組成的資源規(guī)則列表;
4、s2、采集并解析所述spark離線任務,得到所述spark離線任務的數(shù)據(jù)表的行數(shù),并計算所述數(shù)據(jù)表的行數(shù);
5、s3、基于所述資源規(guī)則列表,對所述數(shù)據(jù)表的行數(shù)進行匹配,得到對應的所述計算資源規(guī)則;
6、s4、根據(jù)所述計算資源規(guī)則,將所述spark離線任務調(diào)度發(fā)送至對應的執(zhí)行節(jié)點進行執(zhí)行。
7、作為本技術的一可選實施方案,可選地,s1、預設構建由不同行數(shù)與對應計算資源規(guī)則組成的資源規(guī)則列表,包括:
8、構建用于提取行數(shù)以及識別計算資源規(guī)則的大模型提示詞,并配置在預設的llm大語言模型中;
9、從后臺數(shù)據(jù)庫中收集若干所述spark離線任務的歷史執(zhí)行日志;
10、遍歷所述歷史執(zhí)行日志,由所述llm大語言模型基于所述大模型提示詞,從所述歷史執(zhí)行日志中識別并提取出不同所述spark離線任務的所述數(shù)據(jù)表的行數(shù)與執(zhí)行所述spark離線任務的計算資源規(guī)則;
11、統(tǒng)計不同所述spark離線任務的行數(shù)與對應的計算資源規(guī)則,并由所述llm大語言模型將其自動填寫至預設的規(guī)則表中,得到所述資源規(guī)則列表;
12、將所述資源規(guī)則列表配置在資源調(diào)度器中。
13、作為本技術的一可選實施方案,可選地,所述計算資源規(guī)則中,包括如下規(guī)則要素:
14、driver-memory:驅(qū)動器內(nèi)存
15、driver-cores:驅(qū)動器核心;
16、num-executors:執(zhí)行器數(shù)量;
17、executor-memory:執(zhí)行器內(nèi)存;
18、executor-cores:執(zhí)行器核心。
19、作為本技術的一可選實施方案,可選地,s2、采集并解析所述spark離線任務,得到所述spark離線任務的數(shù)據(jù)表的行數(shù),并計算所述數(shù)據(jù)表的行數(shù),包括:
20、采集由客戶端上報的所述spark離線任務至資源管理器;
21、通過資源管理器解析所述spark離線任務,得到所述spark離線任務中的所述數(shù)據(jù)表的行數(shù);
22、使用enumerate函數(shù)結合文件迭代方式,計算所述數(shù)據(jù)表的行數(shù)并輸入至資源調(diào)度器。
23、作為本技術的一可選實施方案,可選地,s3、基于所述資源規(guī)則列表,對所述數(shù)據(jù)表的行數(shù)進行匹配,得到對應的所述計算資源規(guī)則,包括:
24、通過資源管理器讀取當前所述spark離線任務中的所述數(shù)據(jù)表的行數(shù);
25、調(diào)用所述資源規(guī)則列表,對當前所述spark離線任務中的所述數(shù)據(jù)表的行數(shù)進行匹配檢索,尋找與當前所述spark離線任務中的所述數(shù)據(jù)表的行數(shù)相對應的所述計算資源規(guī)則;
26、將所述計算資源規(guī)則與當前所述spark離線任務相綁定。
27、作為本技術的一可選實施方案,可選地,在調(diào)用所述資源規(guī)則列表,對當前所述spark離線任務中的所述數(shù)據(jù)表的行數(shù)進行匹配檢索之時,包括:
28、通過所述資源管理器生成對應的檢索任務;
29、將所述檢索任務發(fā)送至llm大語言模型,由llm大語言模型執(zhí)行所述檢索任務,對當前所述spark離線任務中的所述數(shù)據(jù)表的行數(shù)進行匹配檢索并將相應的所述計算資源規(guī)則反饋至所述資源管理器;
30、所述資源管理器根據(jù)當前所述spark離線任務的任務屬性,將當前所述spark離線任務以及對應的所述計算資源規(guī)則,通過路由器轉發(fā)至對應的節(jié)點管理器。
31、作為本技術的一可選實施方案,可選地,s4、根據(jù)所述計算資源規(guī)則,將所述spark離線任務調(diào)度發(fā)送至對應的執(zhí)行節(jié)點進行執(zhí)行,包括:
32、通過節(jié)點管理器接收所述資源管理器轉發(fā)的所述計算資源規(guī)則以及當前所述spark離線任務;
33、由所述節(jié)點管理器讀取所述計算資源規(guī)則,識別所述計算資源規(guī)則中的計算資源屬性,根據(jù)所述計算資源屬性,激活相應的執(zhí)行節(jié)點;
34、將所述spark離線任務轉發(fā)至被激活的所述執(zhí)行節(jié)點,進行所述spark離線任務的任務執(zhí)行。
35、本技術另一方面,提出一種實現(xiàn)所述結合輸入數(shù)據(jù)量的spark離線任務資源調(diào)度優(yōu)化方法的系統(tǒng),包括:
36、客戶端,用于上報spark離線任務;
37、資源管理器,用于采集并解析所述spark離線任務,得到所述spark離線任務的數(shù)據(jù)表的行數(shù),并計算所述數(shù)據(jù)表的行數(shù);以及,基于所述資源規(guī)則列表,對所述數(shù)據(jù)表的行數(shù)進行匹配,得到對應的所述計算資源規(guī)則;
38、節(jié)點管理器,用于管理各個執(zhí)行節(jié)點;以及,根據(jù)所述計算資源規(guī)則,將所述spark離線任務調(diào)度發(fā)送至對應的執(zhí)行節(jié)點進行執(zhí)行;
39、路由器,用于所述資源管理器根據(jù)當前所述spark離線任務的任務屬性,將當前所述spark離線任務以及對應的所述計算資源規(guī)則轉發(fā)至對應的所述節(jié)點管理器;
40、llm大語言模型api,用于所述資源管理器調(diào)用llm大語言模型;
41、后臺數(shù)據(jù)庫,用于后臺數(shù)據(jù)存儲;
42、所述資源管理器、路由器、節(jié)點管理器、llm大語言模型api和后臺數(shù)據(jù)庫,均部署于后臺服務器上;
43、所述客戶端與所述后臺服務器通信連接。
44、本技術另一方面,還提出一種電子設備,包括:
45、處理器;
46、用于存儲處理器可執(zhí)行指令的存儲器;
47、其中,所述處理器被配置為執(zhí)行所述可執(zhí)行指令時實現(xiàn)所述的一種結合輸入數(shù)據(jù)量的spark離線任務資源調(diào)度優(yōu)化方法。
48、本發(fā)明的技術效果:
49、本技術通過采集并解析spark離線任務,得到所述spark離線任務的數(shù)據(jù)表的行數(shù),并計算所述數(shù)據(jù)表的行數(shù);基于預設的資源規(guī)則列表,對所述數(shù)據(jù)表的行數(shù)進行匹配,得到對應的所述計算資源規(guī)則;根據(jù)所述計算資源規(guī)則,將所述spark離線任務調(diào)度發(fā)送至對應的執(zhí)行節(jié)點進行執(zhí)行。能夠結合spark離線任務數(shù)據(jù)表的行數(shù)的屬性,進行計算資源的優(yōu)化調(diào)度,使得在實際計算的過程中能夠根據(jù)spark任務輸入數(shù)據(jù)表的數(shù)據(jù)量,動態(tài)按照預設規(guī)則進行資源參數(shù)配置,以此優(yōu)化計算資源的分配,提高計算效率,促使spark離線任務高效運行,有效滿足客戶需求。
50、根據(jù)下面參考附圖對示例性實施例的詳細說明,本公開的其它特征及方面將變得清楚。