
1.本技術涉及大數據任務的調度與執行,主要為基于ai模型來預測大數據任務調度與資源分配的方法。
背景技術:2.隨著云計算的普及與業務云化全面實施,系統的復雜度成指數級增長。一方面是硬件能力的提升帶來業務密度的增加,另一方面軟件定義一切使得業務到系統再到硬件的層次劇烈加深,兩方面的疊加使得云系統的運維工作無論是在量還是在難易程度上都出現前所未有的局面。在這種情況下,即便是一個運維工作高度自動化的系統,面對作業任務有效調度、告警快速消除、故障檢測與業務倒換等諸多方面,也表現得力不從心。因此,業界提出ai運維的概念,并著力實施系統運維的ai化。
3.傳統的自動化運維是通過人為指定規則來驅動系統在滿足規則條件時自動觸發運維動作。ai運維不再依賴于人為指定規則、而是由機器算法自動地從海量運維數據中不斷地學習與提煉,然后獲得運維規則,在系統滿足規則條件時自動觸發運維動作。在現有支持ai運維的系統中,運維工具通過分析日志數據,具有自動識別可消除的告警、自動故障檢測與業務倒換等能力。但這種能力,側重于業務運行中大量出現告警或故障后的相關維護環節。在這個環節的能力,往往表現出一種事后性質。
技術實現要素:4.因此,本技術提出一種基于ai的大數據任務調度方法,以實現減少無意義的業務或系統告警量甚至故障率,提高大數據任務的執行效率。這些方法,應用于不特定的端側、設備、系統甚至數據中心或云化中心,從而構成一種面向全環節的基于ai運維的資源分配與任務調度裝置與系統。為此,本發明:一方面,提出一種資源分配與大數據任務調度的方法,所述方法實現對大數據任務運行所需資源的分配與執行任務的調度。所述分配與調度方法的特征在于,包括:接收第一數據集,所述第一數據集包含大數據任務的特征描述,所述大數據任務為待運行任務;獲取系統資源的供給,所述資源用于運行至少一個所述大數據任務;將所述第一數據集與所述資源供給信息輸入給ai模型,所述ai模型用于對大數據任務作資源預測,所述ai模型來自于第二ai算法;運行ai模型,得到系統資源的某個分配的描述,所述資源分配描述用于描述所述大數據任務在所述資源供給條件下的資源占用;運行第三模塊,所述第三模塊根據所述資源占用與所述大數據任務的所述特征描述,執行對所述大數據任務的資源分配與任務調度。進一步,運行所述大數據任務,生成第四數據,所述第四數據為任務運行時日志的子集;從至少一個所述大數據任務,收集至少一個所述第四數據,得到第四數據集,所述第四數據集為對所述第二ai算法作優化訓練的優化樣本;使用所述第四數據集訓練所述第二ai算法,得到所述ai模型的增強版本。進一步,提取第五數據,所述第五數據為所述第三模塊運行時日志的子集;運行至少一次所述第三模塊,收集至少一個所述第五數
據,得到第五數據集,所述第五數據集為對所述第二ai算法作優化訓練的優化樣本;使用所述第五數據集訓練所述第二ai算法,得到所述ai模型的增強版本。進一步,得到一個第六數據集,所述第六數據集為所述第二ai算法的優化樣本;使用所述第六數據集訓練所述第二ai算法,得到第七數據集,所述第七數據集為所述第六數據集對所述第二ai算法的增強評估;根據所述第七數據集,變更待運行大數據任務的監聽采集與日志記錄。進一步,得到第八數據集,所述第八數據集來自于所述ai模型的增強版本,所述第八數據集包括任務調度算法的遴選模式和算法參數的調適;根據所述第八數據集,替換所述第三模塊的部分特征,得到所述第三模塊的一個新版本。
5.在一個使用ai模型對業務服務與系統運行提供運維支撐的環境中,通過前置的資源分配與任務調度預測的大數據任務調度方法,可以大大減少運維的復雜度、增加系統運行的有效性、從而提升整體的安全性以及成本效益。所述大數據任務調度方法包含:接收第一數據集,所述第一數據集包含大數據任務的特征描述,所述大數據任務為待運行任務;獲取系統資源的供給,所述資源用于運行至少一個所述大數據任務;將所述第一數據集與所述資源供給信息輸入給ai模型,所述ai模型用于對大數據任務作資源預測,所述ai模型來自于第二ai算法;運行ai模型,得到系統資源的某個分配的描述,所述資源分配描述用于描述所述大數據任務在所述資源供給條件下的資源占用;運行第三模塊,所述第三模塊根據所述資源占用與所述大數據任務的所述特征描述,執行對所述大數據任務的資源分配與任務調度。進一步,運行所述大數據任務,生成第四數據,所述第四數據為任務運行時日志的子集;從至少一個所述大數據任務,收集至少一個所述第四數據,得到第四數據集,所述第四數據集為對所述第二ai算法作優化訓練的優化樣本;使用所述第四數據集訓練所述第二ai算法,得到所述ai模型的增強版本。進一步,提取第五數據,所述第五數據為所述第三模塊運行時日志的子集;運行至少一次所述第三模塊,收集至少一個所述第五數據,得到第五數據集,所述第五數據集為對所述第二ai算法作優化訓練的優化樣本;使用所述第五數據集訓練所述第二ai算法,得到所述ai模型的增強版本。進一步,得到一個第六數據集,所述第六數據集為所述第二ai算法的優化樣本;使用所述第六數據集訓練所述第二ai算法,得到第七數據集,所述第七數據集為所述第六數據集對所述第二ai算法的增強評估;根據所述第七數據集,變更待運行大數據任務的監聽采集與日志記錄。進一步,得到第八數據集,所述第八數據集來自于增強版本的所述ai模型,所述第八數據集包括任務調度算法的遴選模式和算法參數的調適;根據所述第八數據集,替換所述第三模塊的部分特征,得到所述第三模塊的一個新版本。
6.這樣,實施了包含上述部分或全部方法與步驟的產品與服務系統,在軟硬件所支持的高密與深層次的系統下,能夠基于任務運行的前置ai能力,有效匹配資源供給與任務特征,避免或減少告警量與故障率,降低運維的復雜度、增加系統運行的有效性、從而提升整體的安全性以及成本效益。
7.另一方面,提出一種基于ai模型作資源分配與任務調度的系統與裝置,所述系統與裝置包含任務單元、采集單元、分析單元、推理單元。這些單元,包括各單元內部作進一步功能劃分的模塊,可以運行在不同網絡集群、或同一網絡集群的不同服務器上、或同一服務器的不同cpu、甚至同一獨立系統中不同軟件層次上。在此不作限制。進一步,上述單元還包括:
rdd分析模塊:該模塊提供大數據任務的執行入口。在該任務入口,根據大數據任務待加工數據集的大小、子集間的關聯關系、子集間的串并行程度等方面進行分析,并在最小粒度的可調度體上給出需串行與可并行計算任務的描述,即dag。進一步,該入口還針對一段時間內到達的各個大數據任務數據集,按一定規則與策略(如資源利用的合理性、或降低系統告警量等)來重新排序待運行大數據任務進入到下一階段;任務調度模塊:該模塊根據推理單元的預測模型的預測結果,以及系統環境中的其它條件,對處于運行狀態中的各大數據任務行使調度功能。進一步,還調整大數據任務的調度算法類型,以實現資源利用的合理性、或降低系統告警量等系統策略;任務執行模塊:該模塊用于生成、維護大數據任務的執行單元;資源管理模塊:該模塊用于收集與提供系統資源的供給情況;樣本迭代模塊:該模塊提供模型訓練所用的樣本收集、或者模型優化所需的樣本迭代功能;日志采集模塊:該模塊提供日志采集與提取功能;調度調優模塊:該模塊提供調度功能所使用的調度算法的調優功能,該模塊通過獲取任務預測模塊的輸出來獲得對調度算法調優的支持;特征匹配模塊:該模塊提供大數據任務特征與特定調度算法的對應與維護功能,該模塊通過獲取任務預測模塊的輸出來獲得對任務特征與調度算法間匹配關系的支持;任務預測模塊:該模塊預測大數據任務的資源分配與任務調度,該模塊的輸入為rdd分析模塊的輸出,該模塊的輸出用于任務調度模塊、調度調優模塊以及特征匹配模塊;模型服務模塊:該模塊對大數據任務作預測的預測模型作更新與部署。
8.本發明提出的上述模塊,同產品實際實施時所需要的其它單元、模塊以及相關平臺與相關引擎一起,共同實現一個基于ai模型作資源分配與任務調度的裝置。體現在:分配與調度裝置接收第一數據集,所述第一數據集包含大數據任務的特征描述,所述大數據任務為待運行任務;分配與調度裝置獲取系統資源的供給,所述資源用于運行至少一個所述大數據任務;分配與調度裝置將所述第一數據集與所述資源供給信息輸入給ai模型,所述ai模型用于對大數據任務作資源預測,所述ai模型來自于第二ai算法;分配與調度裝置運行ai模型,得到系統資源的某個分配的描述,所述資源分配描述用于描述所述大數據任務在所述資源供給條件下的資源占用;分配與調度裝置運行第三模塊,所述第三模塊根據所述資源占用與所述大數據任務的所述特征描述,執行對所述大數據任務的資源分配與任務調度。進一步,分配與調度裝置運行所述大數據任務,生成第四數據,所述第四數據為任務運行時日志的子集;從至少一個所述大數據任務,分配與調度裝置收集至少一個所述第四數據,得到第四數據集,所述第四數據集為對所述第二ai算法作優化訓練的優化樣本;使用所述第四數據集訓練所述第二ai算法,分配與調度裝置得到增強版本的所述ai模型。進一步,分配與調度裝置提取第五數據,所述第五數據為所述第三模塊運行時日志的子集;分配與調度裝置運行至少一次所述第三模塊,收集至少一個所述第五數據,得到第五數據集,所述第五數據集為對所述第二ai算法作優化訓練的優化樣本;分配與調度裝置使用所述第五數據集訓練所述第二ai算法,得到增強版本的所述ai模型。進一步,分配與調度裝置得到一個第六數據集,所述第六數據集為所述第二ai算法的優化樣本;分配與調度裝置使用所述第六數據集訓練所述第二ai算法,得到第七數據集,所述第七數據集為所述第六數據集對
所述第二ai算法的增強評估;根據所述第七數據集,分配與調度裝置變更待運行大數據任務的監聽采集與日志記錄。進一步,分配與調度裝置得到第八數據集,所述第八數據集來自于增強版本的所述ai模型,所述第八數據集包括任務調度算法的遴選模式和算法參數的調適;根據所述第八數據集,分配與調度裝置替換所述第三模塊的部分特征,得到增強版本的所述第三模塊。
9.這樣,實施了包含上述部分或全部方法與步驟的產品與服務系統,在軟硬件所支持的高密與深層次的系統下,能夠基于任務運行的前置ai能力,有效匹配資源供給與任務特征,避免或減少告警量與故障率,降低運維的復雜度、增加系統運行的有效性、從而提升整體的安全性以及成本效益。
10.另一方面,提供了一種計算機可讀存儲介質,該計算機存儲介質存儲有程序指令,該程序指令當被處理器運行時,該處理器(分別)具有執行上述關于方法的實施過程。
11.另一方面,提供了一種管理的裝置,包括存儲組件,處理組件和通信組件,存儲組件,處理組件和通信組件相互連接。其中,存儲組件用于存儲數據處理代碼,通信組件用于與外部設備進行信息交互;處理組件被配置用于調用程序代碼,分別行使上述關于裝置的功能。
12.附圖說明
13.為了更清楚地說明本發明實施的技術方案,更清楚地闡述發明目標的達成要素、方式與過程,下面將對本發明實施中所需要使用的附圖進行說明:圖1是本技術所提出發明的系統組成圖之一;圖2是本技術所提出發明的系統組成圖之一;圖3是本技術所提出發明的系統組成圖之一;圖4是本技術所提出發明的系統組成圖之一;圖5是本技術所提出發明的轉換關系圖之一;圖6是本技術所提出發明的實現操作執行流程之一;圖7是本技術所提出發明的實現操作執行流程之一;圖8是本技術所提出發明的實現操作執行流程之一;圖9是本技術所提出發明的實現操作執行流程之一;圖10是本技術所提出發明的實現操作執行流程之一。
14.具體實施方式
15.下面將結合本發明實施例中的附圖,對本發明實施例進行描述。
16.本技術的說明書和權利要求書及所述附圖中的術語“第一”、“第二”和“第三”等是用于區別不同對象,而不是用于描述特定順序。此外,“包括”和“具有”以及它們任何變形,意圖在于覆蓋不排他的包含。例如包含了一系列步驟或單元的過程、方法、系統、產品或設備沒有限定于已列出的步驟或單元,而是可選地還包括沒有列出的步驟或單元,或可選地還包括對于這些過程、方法、產品或設備固有的其它步驟或單元。
17.在本文中提及“實施例”意味著,結合實施例描述的特定特征、結構或特性可以包含在本技術的至少一個實施例中。在說明書中的各個位置出現該短語并不一定均是指相同的實施例,也不是與其它實施例互斥的獨立的或備選的實施例。本領域技術人員顯式地和隱式地理解的是,本文所描述的實施例可以與其它實施例相結合。
18.在本技術書中使用的術語“服務器”、“設備”、“裝置”、“單元”、“部件”、“模塊”、“系統”等用于表示計算機相關的實體、硬件、固件、硬件和軟件的組合、軟件、或執行中的軟件。例如,服務器可以是但不限于,處理器,數據處理平臺,計算設備,計算機,兩個或更多個計算機等;單元可以是但不限于,在處理器上運行的進程、可運行對象、可執行文件、執行線程、或其它任何可執行的計算機程序。一個或多個單元可駐留在進程和/或執行線程中,一個單元也可位于一個計算機上和/或分布在2個或更多個計算機之間。此外,這些單元可從在上面存儲有各種數據結構的各種計算機可讀介質執行。單元可根據具有一個或多個數據分組(例如來自與本地系統、分布式系統和/或網絡間的另一單元交互的二個單元的數據,例如通過信號與其它系統交互的互聯網)的信號通過本地和/或遠程進程來通信。
19.首先,對本技術中的部分用語進行解釋說明,以便于本領域技術人員理解。所列用語包含如下:(1) 云計算:即cloud computing,指那種擁有集成度優勢、連接在網絡環境中、以服務方式向用戶提供計算、存儲、網絡甚至功能軟件的新型計算范式。這種新的計算范式跟舊有的計算范式的差異,體現在可感觀與可用性上就是,它對用戶而言并不存在可見的固定形態、也沒有固定的物理邊界、甚至基本不存在無資源可用的狀態,故被叫做云計算。云計算打破原有范式下的計算使用方式,因此對原有范式下的安全形成嚴峻的挑戰;(2) 人工智能:即artificial intelligence,簡稱ai,指那種通過計算系統模擬生物或到人類智能的方法、技術、軟硬件及系統的泛稱;(3) 機器學習:機器學習屬于ai領域的一個重要分支性技術。機器學習會從樣本數據中提取數據模式,以便對應用數據做出盡可能好的預測。從目前的發展結果來看,機器學習分為監督學習、無監督學習與強化學習;(4) 任務調度:對于運行同一環境中的多個任務來說,他們間對資源的競爭不可避免。為提升資源的利用率、保障任務的順序運行、確保任務得出有效的邏輯結果,需要按照任務對資源的競爭情況、以及任務內的數據依賴情況來安排任務內子任務的運行。這種安排叫做“任務調度”。通常,在一個分布式環境下,任務調度包含兩個層面的含義:遠程數據依賴相關的任務調度與本地資源競爭相關的任務切換;(5)ai運維:早期的運維工作大部分是由運維人員手工完成的,這被稱為手工運維或人肉運維。后期隨著業務與系統規模上升,便出現以人工提煉規則、系統根據規則來自動實施運維操作的自動化方式。隨著業務與系統的密度與復雜度進一步上升,人式提煉規則難免依然有遺漏,以及隨著ai的普及,便出現基于日志、監控信息、應用信息等運維數據、通過機器學習的方式來進一步提升自動化運維能力與效率的運維方式;(6) 調度算法切換:在復雜業務的系統環境里,算法切換指在ai模型的參與下,基于任務或者任務組的特點來切換任務調度的核心算法,甚至調適算法核心元素的方法與過程。在分布式超大規模的環境里,具有集約屬性的大數據任務給系統提出超高密度的任務調度與計算壓力,算法切換是提升任務吞吐量、更好匹配資源供給與任務要求的一種可行辦法;
(7) rdd與dag:指任務所處理的數據集與任務分解后的內部處理流形成的有向無環圖。rdd與dag是針對同一任務的兩種相對應描述方式。
20.其次,對本發明的目標問題、解決目標問題的技術方法作概覽。隨著云計算的推廣與深入,大規模業務云化帶來兩個方面的復雜度:一個是業務部署密度的高漲,另一個是系統復雜度的高企。這些變化對業務環境與系統的運維帶來更大的困難。為緩解這個問題,業界提出ai運維的觀念、方法并著手實施。ai運維代替了傳統運維那種以事先人工設定規則的方法與過程,從而使得算法控制下運維能力可以在日志及其它數據集中自動尋找與確定運維規則,從而使得消除重復告警、檢測并倒換故障等運維操作體現出更高的自動化與智能化。但這種基于已經發生情況的現有ai運維,并沒有減少或消除運維所需,只是轉移了運維工作的執行體。針對系統作運維的復雜度沒有降低,即并未降低系統的無效性。本發明的方法是將ai運維能力前移,基于ai模型來對資源分配與任務調度作預測,從而為減少甚至努力消除因為資源供給與任務運行的錯配帶來的無效告警,降低系統的無效性。進一步,這種方式更適合在分布式超大規模的計算環境、尤其是針對大數據任務作資源分配與任務調度的預測。
21.再次,結合各附圖,對發明內容作進一步的闡述。其中:如圖1為本技術所提出發明的系統組成圖之一。該組成圖示意了實現本發明所提出前移ai運維能力的基本結構與組成方式。其中所包含的基本組成結構中包含110所示的ai能力層、120所示的數據分析層、130所示的數據采集層。進一步,其中:111-任務預測功能:該功能基于ai模型來實現大數據任務在資源分配占用的預測;112-模型服務功能:該功能提供ai模型服務,所述模型服務包含模型更新與部署,所述模型用于作大數據任務的資源分配占用預測;121-特征分析功能:該功能提供對大數據任務作特征分析與提取的能力;122-任務調度功能:該功能提供對大數據任務作資源分配與調度的能力131-日志采集功能:該功能提供任務運行日志作采集與分析的能力;132-樣本迭代功能:該功能提供對ai模型的反饋性優化作樣本迭代提取的能力。
22.如圖2為本技術所提出發明的系統組成圖之一。該圖示意了基于ai模型預測大數據任務的資源分配與任務調度的總體組成與架構。其中:210-大數據計算層:該計算層提供預測目標的操作執行環境。進一步,該計算還包含;211-任務調度中心:該調度中心根據ai模型的預測結果,完成對目標大數據任務的資源分配與任務調度;211~212-計算集群:該集群提供大數據任務的執行物理單元,所述執行物理單元的一個或多個組成集群;220-開發編譯工具層:該工具層提供對目標大數據任務的日志記錄的變更能力;230-運維界面層:該界面層提供業務與系統運維的界面支持,如顯示運維內容、提供運維操作界面等;240-運維能力層:該能力層提供業務與系統運維所需要的具體功能與組合能力,如噪聲抑制(告警消除)、故障檢測、模式發現、資源預測等;250-數據分析層:該分析層用于整理與分析資源供給、任務特征、日志內容等數據;260-數據存儲層:該存儲層用于存儲資源供給、任務特征、日志內容等數據,以及這些
數據關聯關系的數據;270-數據采集層:訪采集層用于通過監聽接口或etl工具采集或收集資源供給、任務特征等數據,以及來自于外部來源的數據;280-大數據任務入口:該接口用于大數據任務的調入通道。
23.如圖3為本技術所提出發明的系統組成圖之一。該圖示意了基于ai模型預測大數據任務的資源分配與任務調度的進一步組成與分解架構。其中,310所示為ai能力層,320所示為運維能力層,330所示為數據分析層,340所示為數據存儲層,350所示為數據采集層。這些能力層次,可以運行在不同網絡集群、或同一網絡集群的不同服務器上。在此不作限制。進一步,還包括:311-樣本生成:所示提供ai模型訓練所需的數據樣本,主要涉及模型訓練樣本與模型優化樣本的生成;312-模型訓練:所示提供模型訓練的能力,所述模型主要用于大數據任務的資源分配與任務調度的預測;313-模型服務:所示提供模型服務的能力,主要涉及預測模型的更新與部署服務;321-噪聲抑制:所示提供噪聲抑制的能力,主要涉及如告警消除等的作用;322-故障檢測:所示提供對運維目標系統中所出現的異常甚至故障作檢測、并基于特定方式來完成功能單元或模塊的倒換;323-模式發現:所示提供運維目標系統中的日志內容或其它數據積累結果,從而發現新的待處理事件的能力;324-資源預測:所示提供對新接入大數據任務作資源分配與任務調度的預測;331-樣本提?。核咎峁颖舅钄祿奶崛」δ?,所需數據集來自于數據存儲層的實時數據或歷史數據;332-rdd分析:所示提供rdd分析功能,所述分析功能從任務待加工數據集的大小、子集間的關聯關系、子集間的串并行程度等方面進行分析,并在最小粒度的可調度體上給出需串行與可并行計算任務的描述,即dag;333-任務分析:所示提供任務粒度的統計與分析功能,主要涉及運行中任務與所占用資源的映射與統計;334-資源分析:所示提供系統資源的供給與占用分析,所述資源包括大數據任務使用到的存儲、網絡、計算等硬件資源,也包括系統庫、調用棧、映像等軟件資源;341-實時數據:所示提供基于實時數據的存儲功能;342-歷史數據:所示提供基于歷史數據的存儲功能;351-流式采集:所示提供基于監聽接口對運行任務所作的實時采集;352-工具采集:所示提供基于etl類工具對來自外部源數據所作的非實時采集。
24.如圖4為本技術所提出發明的系統組成圖之一。該圖示意了基于功能模塊劃分與組成的ai運維的實現。其中,410所示提供任務單元,420所示提供采集單元,430所示提供分析單元,440所示提供推理單元。這些單元,包括各單元內部作進一步功能劃分的模塊,可以運行在不同網絡集群、或同一網絡集群的不同服務器上、或同一服務器的不同cpu、甚至同一獨立系統中不同軟件層次上。在此不作限制。進一步,還包括:411-rdd分析模塊:該模塊提供大數據任務的執行入口。在該任務入口,根據大數據任
務待加工數據集的大小、子集間的關聯關系、子集間的串并行程度等方面進行分析,并在最小粒度的可調度體上給出需串行與可并行計算任務的描述,即dag。進一步,該入口還針對一段時間內到達的各個大數據任務數據集,按一定規則與策略(如資源利用的合理性、或降低系統告警量等)來重新排序待運行大數據任務進入到下一階段;412-任務調度模塊:該模塊根據推理單元的預測模型的預測結果,以及系統環境中的其它條件,對處于運行狀態中的各大數據任務行使調度功能。進一步,還進一步調整大數據任務的調度算法類型,以實現資源利用的合理性、或降低系統告警量等系統策略;413-任務執行模塊:該模塊用于生成、維護大數據任務的執行單元;414-資源管理模塊:該模塊用于收集與提供系統資源的供給情況;421-樣本迭代模塊:該模塊提供模型訓練所用的樣本收集、或者模型優化所需的樣本迭代功能;422-日志采集模塊:該模塊提供日志采集與提取功能;431-調度調優模塊:該模塊提供調度功能所使用的調度算法的調優功能,該模塊通過獲取任務預測模塊的輸出來獲得對調度算法調優的支持;432-特征匹配模塊:該模塊提供大數據任務特征與特定調度算法的對應與維護功能,該模塊通過獲取任務預測模塊的輸出來獲得對任務特征與調度算法間匹配關系的支持;441-任務預測模塊:該模塊預測大數據任務的資源分配與任務調度,該模塊的輸入為rdd分析模塊的輸出,該模塊的輸出用于任務調度模塊、調度調優模塊以及特征匹配模塊;442-模型服務模塊:該模塊對大數據任務作預測的預測模型作更新與部署。
25.如圖5為本技術所提出發明的轉換關系圖之一。該圖示意了大數據任務在執行過程中的功能信賴關系與轉換過程。其中:510所示為大數據任務的入口,在該入口,大數據任務被調入;520所示為輸入的大數據任務被分解出數據集rdd,所述數據集通過rdd分析模塊后得到數據集內部的關聯描述結果,圖示為一個關系示例;530所示為輸入的大數據任務被分解出的子任務描述示例;540所示為根據數據示例與子任務示例,由調度模塊根據資源供給的匹配情況將大數據任務調度對應資源節點上的運行示例。
26.如圖6為本發明提出的操作執行流程之一。該圖示意了預測大數據任務的資源分配與任務調度的ai模型的訓練生成過程。其中:01a-大數據任務調入:該操作示意了一個大數據任務調入任務執行入口的操作;01b-運行前資源記錄:該操作用于記錄所調入大數據任務在運行前的資源占用情況;01c-運行中資源記錄:該操作用于記錄所調入大數據對資源的占用記錄;01d-任務日志采集:該操作用于從大數據任務以及系統相關模塊的日志中,采集反映所述大數據任務的特征的描述信息;01e-任務資源使用分析:該操作用于根據所述記錄與描述信息,分析生成所述大數據任務的資源使用描述,以作為預測模型的樣本數據集的某個子集;01f-任務rdd信息提?。涸摬僮饔糜趯λ{入的大數據任務作所屬數據集的提取與rdd分析;01g-任務靜態信息提?。涸摬僮饔糜趯λ{入的大數據任務作任務靜態信息的提取與分析;01h-任務動態信息分析:該操作用于對處于運行中的所述大數據任務作動態信息的提
取與分析;01j-預測模型樣本收集:該操作用于收集與整理預測模型訓練所需要的樣本數據集;01k-預測模型訓練:該操作用于,在預測模型所需樣本滿足訓練要求的情況下,進行預測模型的訓練與生成。
27.如圖7為本發明提出的操作執行流程之一。該圖示意了基于ai模型作預測的大數據任務的資源分配與任務調度的過程。進一步:02a-大數據任務調入:該操作示意了一個大數據任務調入任務執行入口的操作;02b-任務rdd信息提?。涸摬僮饔糜趯λ{入的大數據任務作所屬數據集的提取與rdd分析;02c-任務靜態信息提?。涸摬僮饔糜趯λ{入的大數據任務作任務靜態信息的提取與分析;02d-資源信息提?。涸摬僮饔糜讷@取系統中用于大數據任務執行的資源供給信息;02e-預測模型輸入:該操作用于將任務信息與資源供給信息作為預測模型推理的輸入;02f-預測模型推理:該操作用于示意預測模型的推理過程;02g-取得預測結果:該操作用于示意取得預測模型推理后的預測結果;02h-資源調用與任務分配:該操作用于根據對資源分配與任務調度的預測結果來行使資源分配與任務執行所需要的調度操作。
28.如圖8為本發明提出的操作執行流程之一,該圖示意了一個具有反饋優化樣本的ai模型作預測的資源分配、大數據任務調度與執行的過程,所述反饋優化的樣本,在達到ai模型樣本數據集所要求的規模后,將被用于模型的優化訓練。進一步:03a-大數據任務調入:該操作示意了一個大數據任務調入任務執行入口的操作;03b-任務分析與信息提?。涸摬僮饔糜趯λ{入的大數據任務作數據特征分析與運行特征分析,所述特征分析對象包括但不限于rdd與dag;03c-資源與任務預測:該操作用于針對所調入的大數據任務的運行情況作預測,所述預測包含資源分析與任務調度;03d-資源分配與任務調度:該操作用于根據預測結果進行資源分配與所調入的大數據任務在運行前的調度;03e-任務運行:該操作示意啟動目標大數據任務各子任務的運行;03f-監聽采集與日志記錄:該操作用于針對運行大數據任務進行事件監聽采集,并將所采集到的內容作日志記錄;03g-優化樣本提?。涸摬僮饔糜趶脑诖髷祿蝿者\行所采集與記錄的日志中提取優化樣本所需要的數據、并將相關數據發送到模型優化訓練端;03h-預測模型樣本收集:該操作用于接收與收集從任務日志中提取的優化樣本數據;03j-預測模型優化訓練:該操作用于對預測模型作優化式訓練,所述優化訓練使用前述的優化樣本。
29.如圖9為本發明提出的操作執行流程之一。該圖示意了一個具有動態監聽與日志采集的反饋式優化模型訓練的過程,所述動態監聽采集與日志記錄為根據對優化訓練的評估來變更監聽器對大數據任務的采集、以變更日志記錄點、從而變更優化樣本數據內容甚
至數據點位。進一步:04a-預測模型樣本收集:該操作用于接收與收集從任務日志中提取的優化樣本數據;04b-預測模型優化訓練:該操作用于對預測模型作優化式訓練,所述優化訓練使用前述的優化樣本;04c-資源與任務預測:該操作用于針對所調入的大數據任務的運行情況作預測,所述預測包含資源分析與任務調度;04d-資源分配與任務調度:該操作用于根據預測結果進行資源分配與所調入的大數據任務在運行前的調度;04e-優化訓練評估:該操作用于對優化訓練結果作評估,尤其是優化樣本的效果作評估;04f-任務監聽與日志采集變更:該操作用于根據優化評估來變更針對大數據任務的監聽采集器,以變更運行中任務的日志記錄內容與日志記錄點位;04g-任務運行:該操作示意啟動目標大數據任務各子任務的運行;04h-監聽采集與日志記錄:該操作用于針對運行大數據任務進行事件監聽采集,并將所采集到的內容作日志記錄;04j-優化樣本提?。涸摬僮饔糜趶脑诖髷祿蝿者\行所采集與記錄的日志中提取優化樣本所需要的數據、并將相關數據發送到模型優化訓練端。
30.如圖10為本發明提出的操作執行流程之一。該圖示意了一個基于可變調度算法的優化樣本模型訓練過程。在所述優化樣本模型訓練過程中,調度器根據任務特征,在不同的任務調度算法間作選擇、甚至調適調度算法內部控制元素,并將這些變更信息作為模型訓練樣本的子集數據,預測模型以此感知與調適調度算法,從而大數據任務的資源分配與任務調度過程可以從控制邏輯上得以優化。所述可選擇調度算法,如fifo、fair、lifo或其它模型支持的調度核心過程。所述調度算法控制元素,如任務優先級、任務間的可搶占性等屬性。進一步:05a-大數據任務調入:該操作用于了一個大數據任務調入任務執行入口的操作;05b-任務分析與信息提?。涸摬僮饔糜趯λ{入的大數據任務作數據特征分析與運行特征分析,所述特征分析對象包括但不限于rdd與dag;05c-資源與任務預測:該操作用于針對所調入的大數據任務的運行情況作預測,所述預測包含資源分析與任務調度;05d-資源分配與任務調度:該操作用于根據預測結果進行資源分配與所調入的大數據任務在運行前的調度;05e-大數據任務運行:該操作示意啟動目標大數據任務各子任務的運行;05f-(任務)監聽采集與日志記錄:該操作用于針對運行大數據任務進行事件監聽采集,并將所采集到的內容作日志記錄;05g-優化樣本提?。涸摬僮饔糜趶尼槍Υ髷祿蝿张c任務調度器的運行過程中所采集與記錄的日志中提取優化樣本所需要的數據、并將相關數據發送到模型優化訓練端;05h-預測模型樣本收集:該操作用于接收與收集所提取的優化樣本數據;05j-預測模型優化訓練:該操作用于對預測模型作優化式訓練;05k-(調度器)監聽采集與日志記錄:該操作用于針對任務調度器進行事件監聽采集,
并將所采集到的內容作日志記錄。
31.在本技術中,所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于單個網絡節點內,或者也可以分布到多個網絡節點上??梢愿鶕嶋H的需要選擇其中的部分或者全部單元來實現本發明實施例方案的目的。
32.另外,根據具體約束與實現所需,在本技術各個實施例中的各功能組件可以集成在一個組件也可以是各個組件單獨物理存在,也可以是兩個或兩個以上組件集成在一個組件中。上述集成的組件既可以采用硬件的形式實現,也可以采用軟件功能單元的形式實現。
33.所述集成的組件如果以軟件功能單元的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中?;谶@樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分,或者該技術方案的全部或部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺或一臺以上計算機設備 (可以是個人計算機,服務器,或者網絡設備等) 執行各個本發明實施例所述方法的全部或部分步驟。而前述的存儲介質包括:u 盤、移動硬盤、只讀存儲器 (rom,read-only memory)、隨機存取存儲器 (ram,random access memory)、磁碟或者光盤等各種可以存儲程序代碼的介質。
34.以上所述,僅為本技術的具體實施方式,但本技術的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發明揭露的技術范圍內,可輕易想到各種等效的修改或替換,這些修改或替換都應涵蓋在本發明的保護范圍之內。因此,本技術的保護范圍應以權利要求的保護范圍為準。
35.應理解,在本技術的各種實施例中,上述各過程的序號的大小并不意味著先后執行的嚴格順序,各過程的執行順序應以其功能和內在邏輯確定,而不應對本發明實施例的實施過程構成任何限定。盡管在此結合各實施例對本技術進行了描述,然而,在實施例所要求保護的本技術過程中,本領域技術人員可理解并實現公開實施例的其他變化。