本技術(shù)涉及大數(shù)據(jù)處理,尤其涉及一種作業(yè)實例調(diào)度方法、裝置、設(shè)備、介質(zhì)及產(chǎn)品。
背景技術(shù):
1、大數(shù)據(jù)作業(yè)調(diào)度是在大數(shù)據(jù)處理環(huán)境中對各類數(shù)據(jù)處理任務(wù)進(jìn)行計劃、管理和執(zhí)行的過程。該過程涉及多種類型的作業(yè),每種作業(yè)都有其特定的計算框架。這些框架內(nèi)置了資源管控機(jī)制,通過與上層的任務(wù)調(diào)度系統(tǒng)相結(jié)合,可以對作業(yè)實例進(jìn)行調(diào)度,以優(yōu)化資源利用率和提高作業(yè)執(zhí)行效率。
2、現(xiàn)有的作業(yè)調(diào)度通常由兩層調(diào)度框架完成,上層的任務(wù)調(diào)度軟件僅能進(jìn)行粗粒度的作業(yè)提交,而實際的作業(yè)實例調(diào)度依賴于底層資源管理框架的能力。由于不同類型的作業(yè)實例對應(yīng)的底層框架存在較大差異,難以實現(xiàn)統(tǒng)一的資源調(diào)度。此外,兩層調(diào)度架構(gòu)導(dǎo)致資源管控鏈路較長,從而降低了調(diào)度效率。
技術(shù)實現(xiàn)思路
1、本技術(shù)提供了一種作業(yè)實例調(diào)度方法、裝置、設(shè)備、介質(zhì)及產(chǎn)品,旨在解決兩層調(diào)度框架中存在的由于對底層資源管理框架依賴性強(qiáng)而導(dǎo)致的統(tǒng)一資源調(diào)度難度大、調(diào)度效率低的技術(shù)問題。
2、第一方面,本技術(shù)提供一種作業(yè)實例調(diào)度方法,所述方法包括:
3、獲取至少一個待調(diào)度的第一作業(yè)實例及第一作業(yè)實例的相關(guān)信息;
4、響應(yīng)于根據(jù)各所述相關(guān)信息確定滿足就緒狀態(tài)的第二作業(yè)實例,將所述第二作業(yè)實例寫入到對應(yīng)租戶下的就緒作業(yè)隊列中;
5、針對各租戶下的就緒作業(yè)隊列中當(dāng)前第二作業(yè)實例,確定當(dāng)前第二作業(yè)實例的類型,并獲取與當(dāng)前第二作業(yè)實例的類型相匹配的目標(biāo)可用資源檢測策略;
6、基于目標(biāo)可用資源檢測策略對當(dāng)前第二作業(yè)實例對應(yīng)的可用資源進(jìn)行檢測;
7、響應(yīng)于可用資源滿足當(dāng)前第二作業(yè)實例執(zhí)行要求,將當(dāng)前第二作業(yè)實例提交到已派發(fā)隊列中;
8、將已派發(fā)隊列中的第二作業(yè)實例調(diào)度到對應(yīng)的物理資源組中。
9、在一種可能的設(shè)計中,所述第一作業(yè)實例的相關(guān)信息包括前置依賴條件;
10、根據(jù)各所述相關(guān)信息確定滿足就緒狀態(tài)的第二作業(yè)實例,包括:
11、根據(jù)各第一作業(yè)實例的前置依賴條件確定當(dāng)前條件是否滿足對應(yīng)的前置依賴條件;
12、響應(yīng)于當(dāng)前條件滿足前置依賴條件,則將當(dāng)前條件滿足前置依賴條件的第一作業(yè)實例確定為滿足就緒狀態(tài)的第二作業(yè)實例。
13、在一種可能的設(shè)計中,所述第一作業(yè)實例的相關(guān)信息包括租戶標(biāo)識:
14、將所述第二作業(yè)實例寫入到對應(yīng)租戶下的就緒作業(yè)隊列中,包括:
15、根據(jù)所述第一作業(yè)實例的租戶標(biāo)識,將第二作業(yè)實例寫入到租戶標(biāo)識對應(yīng)租戶的就緒作業(yè)隊列中;
16、所述方法還包括:
17、將第二作業(yè)實例的相關(guān)信息寫入到租戶標(biāo)識對應(yīng)租戶的有序集合中,所述有序集合位于預(yù)設(shè)數(shù)據(jù)庫中。
18、在一種可能的設(shè)計中,所述基于目標(biāo)可用資源檢測策略對當(dāng)前第二作業(yè)實例對應(yīng)的可用資源進(jìn)行檢測,包括:
19、若作業(yè)實例類型為mpp類型,則對可用的mpp集群的指標(biāo)及可用的資源量先后進(jìn)行檢測;
20、若作業(yè)實例類型為容器類型,則對可用的資源量及可用的集群節(jié)點的負(fù)載進(jìn)行檢測;
21、若作業(yè)實例類型為spark類型,則對可用的資源量進(jìn)行檢測。
22、在一種可能的設(shè)計中,所述對可用的mpp集群的指標(biāo)及可用的資源量先后進(jìn)行檢測,包括:
23、獲取所述第二作業(yè)實例的相關(guān)信息中的申請的mpp集群的指標(biāo)及申請的資源量;
24、響應(yīng)于申請的mpp集群的指標(biāo)小于或等于可用的mpp集群的指標(biāo),且申請的資源量小于或等于可用的資源量,確定可用資源滿足當(dāng)前第二作業(yè)實例執(zhí)行要求;
25、響應(yīng)于申請的mpp集群的指標(biāo)大于可用的mpp集群的指標(biāo),或申請的mpp集群的指標(biāo)小于或等于可用的mpp集群的指標(biāo)且申請的資源量大于可用的資源量,確定可用資源不滿足當(dāng)前第二作業(yè)實例執(zhí)行要求。
26、在一種可能的設(shè)計中,所述對可用的資源量及可用的集群節(jié)點的負(fù)載進(jìn)行檢測,包括:
27、獲取所述第二作業(yè)實例的相關(guān)信息中的申請的集群節(jié)點的負(fù)載及申請的資源量;
28、響應(yīng)于申請的集群節(jié)點的負(fù)載小于或等于可用的集群節(jié)點的負(fù)載,且申請的資源量小于或等于可用的資源量,確定可用資源滿足當(dāng)前第二作業(yè)實例執(zhí)行要求;
29、響應(yīng)于申請的集群節(jié)點的負(fù)載大于可用的集群節(jié)點的負(fù)載、和/或申請的資源量大于可用的資源量,確定可用資源不滿足當(dāng)前第二作業(yè)實例執(zhí)行要求。
30、在一種可能的設(shè)計中,所述對可用的資源量進(jìn)行檢測,包括:
31、獲取所述第二作業(yè)實例的相關(guān)信息中的申請的資源量;
32、響應(yīng)于申請的資源量小于或等于可用的資源量,確定可用資源滿足當(dāng)前第二作業(yè)實例執(zhí)行要求;
33、響應(yīng)于申請的資源量大于可用的資源量,確定可用資源不滿足當(dāng)前第二作業(yè)實例執(zhí)行要求。
34、在一種可能的設(shè)計中,所述方法還包括:
35、周期性地從底層計算平臺采集如下可用資源數(shù)據(jù)的至少一種:
36、物理資源組可用的資源量、可用的mpp集群的指標(biāo)、可用的集群節(jié)點的負(fù)載;
37、其中,所述可用的mpp集群的指標(biāo)包括:mpp集群的可用用戶連接數(shù)和可用隊列長度。
38、在一種可能的設(shè)計中,所述將已派發(fā)隊列中的第二作業(yè)實例調(diào)度到對應(yīng)的物理資源組中之后,還包括:
39、響應(yīng)于調(diào)度失敗,則發(fā)出調(diào)度失敗提示信息;
40、根據(jù)所述調(diào)度失敗提示信息將調(diào)度失敗的第二作業(yè)實例重新寫入到對應(yīng)租戶下的就緒作業(yè)隊列中。
41、第二方面,本技術(shù)提供一種作業(yè)實例調(diào)度裝置,所述裝置包括:
42、獲取模塊,用于獲取至少一個待調(diào)度的第一作業(yè)實例及第一作業(yè)實例的相關(guān)信息;
43、寫入模塊,用于響應(yīng)于根據(jù)各所述相關(guān)信息確定滿足就緒狀態(tài)的第二作業(yè)實例,將所述第二作業(yè)實例寫入到對應(yīng)租戶下的就緒作業(yè)隊列中;
44、確定模塊,用于針對各租戶下的就緒作業(yè)隊列中當(dāng)前第二作業(yè)實例,確定當(dāng)前第二作業(yè)實例的類型;
45、檢測模塊,用于基于目標(biāo)可用資源檢測策略對當(dāng)前第二作業(yè)實例對應(yīng)的可用資源進(jìn)行檢測;
46、提交模塊,用于響應(yīng)于可用資源滿足當(dāng)前第二作業(yè)實例執(zhí)行要求,將當(dāng)前第二作業(yè)實例提交到已派發(fā)隊列中;
47、調(diào)度模塊,用于將已派發(fā)隊列中的第二作業(yè)實例調(diào)度到對應(yīng)的物理資源組中;
48、所述獲取模塊,還用于獲取與當(dāng)前第二作業(yè)實例的類型相匹配的目標(biāo)可用資源檢測策略。
49、第三方面,本技術(shù)實施例提供一種電子設(shè)備,包括:處理器,以及與所述處理器通信連接的存儲器;
50、所述存儲器存儲計算機(jī)執(zhí)行指令;
51、所述處理器執(zhí)行所述存儲器存儲的計算機(jī)執(zhí)行指令,以實現(xiàn)如第一方面所述的方法。
52、第四方面,本技術(shù)提供一種計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀存儲介質(zhì)中存儲有計算機(jī)執(zhí)行指令,所述計算機(jī)執(zhí)行指令被處理器執(zhí)行時用于實現(xiàn)如第一方面所述的方法。
53、第五方面,本技術(shù)提供一種計算機(jī)程序產(chǎn)品,包括計算機(jī)程序,該計算機(jī)程序被處理器執(zhí)行時實現(xiàn)如第一方面所述的方法。
54、本技術(shù)提供的作業(yè)實例調(diào)度方法、裝置、設(shè)備、介質(zhì)及產(chǎn)品,通過獲取至少一個待調(diào)度的第一作業(yè)實例及第一作業(yè)實例的相關(guān)信息;響應(yīng)于根據(jù)各所述相關(guān)信息確定滿足就緒狀態(tài)的第二作業(yè)實例,將所述第二作業(yè)實例寫入到對應(yīng)租戶下的就緒作業(yè)隊列中;針對各租戶下的就緒作業(yè)隊列中當(dāng)前第二作業(yè)實例,確定當(dāng)前第二作業(yè)實例的類型,并獲取與當(dāng)前第二作業(yè)實例的類型相匹配的目標(biāo)可用資源檢測策略;基于目標(biāo)可用資源檢測策略對當(dāng)前第二作業(yè)實例對應(yīng)的可用資源進(jìn)行檢測;響應(yīng)于可用資源滿足當(dāng)前第二作業(yè)實例執(zhí)行要求,將當(dāng)前第二作業(yè)實例提交到已派發(fā)隊列中;將已派發(fā)隊列中的第二作業(yè)實例調(diào)度到對應(yīng)的物理資源組中。通過獲取作業(yè)實例的相關(guān)信息并確定其就緒狀態(tài),篩選出符合調(diào)度條件的作業(yè)實例后將其放入就緒作業(yè)隊列用于后續(xù)的作業(yè)實例調(diào)度,這樣可以避免無效調(diào)度,有利于提高調(diào)度效率。同時,針對就緒作業(yè)隊列中的作業(yè)實例,獲取與作業(yè)實例類型相匹配的目標(biāo)可用資源檢測策略,有利于資源的準(zhǔn)確檢測,實現(xiàn)對不同類型的作業(yè)實例的統(tǒng)一調(diào)度。此外,使用物理資源組的概念對資源進(jìn)行表征,一定程度上也可以屏蔽計算平臺的差異,進(jìn)而降低統(tǒng)一調(diào)度的難度,提高調(diào)度效率。